Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

zfs-2.3.0-rc5 patchset #16875

Merged
merged 39 commits into from
Jan 6, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
6604fe9
backtrace: fix off-by-one on string output
robn Dec 13, 2024
1e08e49
build: use correct bashcompletiondir on arch
poscat0x04 Dec 13, 2024
5bb034f
flush: don't report flush error when disabling flush support
robn Jul 1, 2024
e1833a7
flush: only detect lack of flush support in one place
robn Jul 1, 2024
2284a61
Remount datasets on soft-reboot
kotauskas Dec 13, 2024
6969435
Fix use-afer-free regression in RAIDZ expansion
amotin Dec 14, 2024
4b8bf3c
Fix stray "no" in configure output
behlendorf Dec 14, 2024
b57f530
simd_stat: fix undefined CONFIG_KERNEL_MODE_NEON error on armel
Harry-Chen Dec 16, 2024
1862c1c
Removing old code outside of 4.18 kernsls
bwatkinson Dec 3, 2024
d67eb17
Use pin_user_pages API for Direct I/O requests
bwatkinson Dec 10, 2024
18b3bea
CI: Add FreeBSD 14.2 RELEASE+STABLE builds
behlendorf Dec 17, 2024
e90124a
zprop: fix value help for ZPOOL_PROP_CAPACITY
robn Dec 18, 2024
166a7bc
CI: Fix FreeBSD 13.4 STABLE build
mcmilk Dec 19, 2024
c944c46
zfs_main: fix alignment on props usage output
robn Dec 19, 2024
cb8da70
Skip iterating over snapshots for share properties
usaleem-ix Dec 19, 2024
f9b02fe
Fix readonly check for vdev user properties
amotin Dec 20, 2024
9519e7e
microzap: set hard upper limit of 1M
robn Dec 26, 2024
30b97ce
ZTS: Increase write sizes for RAIDZ/dRAID tests
amotin Dec 27, 2024
74064cb
zpool_get_vdev_prop_value: show missing vdev userprops
robn Dec 19, 2024
c3d2412
ZTS: Remove non-standard awk hex numbers usage
amotin Dec 20, 2024
0f6d955
ZTS: Remove procfs use from zpool_import_status
amotin Dec 25, 2024
0fea7fc
ZTS: Reduce file size in redacted_panic to 1GB
amotin Dec 26, 2024
b952e06
zvol: implement platform-independent part of block cloning
ixhamza Dec 29, 2024
c2d9494
set zfs_arc_shrinker_limit to 0 by default
shodanshok Dec 29, 2024
679b164
Add missing zfs_exit() when snapdir is disabled (#16912)
anodos325 Dec 31, 2024
939e9f0
ZTS: add centos stream10 (#16904)
hanthor Jan 2, 2025
a55b6fe
ZTS: zfs_mount_all_fail leaves /var/tmp/testrootPIDNUM directory around
tsoome Jan 2, 2025
e411081
ZTS: functional/mount scripts are not removing /var/tmp/testdir.X dirs
tsoome Jan 2, 2025
997db7a
ZTS: checkpoint_discard_busy does not set 16M on cleanup
tsoome Jan 2, 2025
cfec8f1
zfs_vnops_os.c: fallocate is valid but not supported on FreeBSD
pstef Jan 3, 2025
e47b033
ZTS: remove unused TESTDIRS from pam/cleanup.ksh
tsoome Jan 3, 2025
4425a7b
vdev_open: clear async remove flag after reopen
robn Jan 3, 2025
1257314
ZTS: checkpoint_discard_busy should use save_tunable/restore_tunable
tsoome Jan 3, 2025
47b7dc9
Add Makefile dependencies for scripts/zfs-tests.sh -c
rrevans Jan 4, 2025
2556540
Too many vdev probe errors should suspend pool
don-brady Jan 4, 2025
5ba50c8
fix: make zfs_strerror really thread-safe and portable
rkojedzinszky Jan 4, 2025
9f1c5e0
Remove duplicate dedup_legacy_create in common.run
rrevans Jan 6, 2025
307fd0d
Support for cross-compiling kernel modules
n0-1 Jan 6, 2025
0c88ae6
Tag 2.3.0-rc5
behlendorf Dec 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 17 additions & 10 deletions .github/workflows/scripts/qemu-2-start.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ OSv=$OS

# compressed with .zst extension
REPO="https://github.com/mcmilk/openzfs-freebsd-images"
FREEBSD="$REPO/releases/download/v2024-10-05"
FREEBSD="$REPO/releases/download/v2024-12-14"
URLzs=""

# Ubuntu mirrors
Expand All @@ -40,6 +40,12 @@ case "$OS" in
# dns sometimes fails with that url :/
echo "89.187.191.12 geo.mirror.pkgbuild.com" | sudo tee /etc/hosts > /dev/null
;;
centos-stream10)
OSNAME="CentOS Stream 10"
# TODO: #16903 Overwrite OSv to stream9 for virt-install until it's added to osinfo
OSv="centos-stream9"
URL="https://cloud.centos.org/centos/10-stream/x86_64/images/CentOS-Stream-GenericCloud-10-latest.x86_64.qcow2"
;;
centos-stream9)
OSNAME="CentOS Stream 9"
URL="https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2"
Expand Down Expand Up @@ -76,28 +82,29 @@ case "$OS" in
BASH="/usr/local/bin/bash"
NIC="rtl8139"
;;
freebsd14-0r)
OSNAME="FreeBSD 14.0-RELEASE"
OSv="freebsd14.0"
URLzs="$FREEBSD/amd64-freebsd-14.0-RELEASE.qcow2.zst"
BASH="/usr/local/bin/bash"
;;
freebsd14-1r)
OSNAME="FreeBSD 14.1-RELEASE"
OSv="freebsd14.0"
URLzs="$FREEBSD/amd64-freebsd-14.1-RELEASE.qcow2.zst"
BASH="/usr/local/bin/bash"
;;
freebsd14-2r)
OSNAME="FreeBSD 14.2-RELEASE"
OSv="freebsd14.0"
URLzs="$FREEBSD/amd64-freebsd-14.2-RELEASE.qcow2.zst"
BASH="/usr/local/bin/bash"
;;
freebsd13-4s)
OSNAME="FreeBSD 13.4-STABLE"
OSv="freebsd13.0"
URLzs="$FREEBSD/amd64-freebsd-13.4-STABLE.qcow2.zst"
BASH="/usr/local/bin/bash"
NIC="rtl8139"
;;
freebsd14-1s)
OSNAME="FreeBSD 14.1-STABLE"
freebsd14-2s)
OSNAME="FreeBSD 14.2-STABLE"
OSv="freebsd14.0"
URLzs="$FREEBSD/amd64-freebsd-14.1-STABLE.qcow2.zst"
URLzs="$FREEBSD/amd64-freebsd-14.2-STABLE.qcow2.zst"
BASH="/usr/local/bin/bash"
;;
freebsd15-0c)
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/scripts/qemu-3-deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ case "$1" in
sudo dnf install -y kernel-abi-whitelists
echo "##[endgroup]"
;;
almalinux9|centos-stream9)
almalinux9|centos-stream9|centos-stream10)
echo "##[group]Enable epel and crb repositories"
sudo dnf config-manager -y --set-enabled crb
sudo dnf install -y epel-release
Expand Down
34 changes: 30 additions & 4 deletions .github/workflows/zfs-qemu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@ name: zfs-qemu
on:
push:
pull_request:
workflow_dispatch:
inputs:
include_stream9:
type: boolean
required: false
default: false
description: 'Test on CentOS 9 stream'
include_stream10:
type: boolean
required: false
default: false
description: 'Test on CentOS 10 stream'

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
Expand All @@ -22,8 +34,8 @@ jobs:
- name: Generate OS config and CI type
id: os
run: |
FULL_OS='["almalinux8", "almalinux9", "centos-stream9", "debian11", "debian12", "fedora40", "fedora41", "freebsd13-4r", "freebsd14-0r", "freebsd14-1s", "ubuntu20", "ubuntu22", "ubuntu24"]'
QUICK_OS='["almalinux8", "almalinux9", "debian12", "fedora41", "freebsd13-3r", "freebsd14-1r", "ubuntu24"]'
FULL_OS='["almalinux8", "almalinux9", "debian11", "debian12", "fedora40", "fedora41", "freebsd13-3r", "freebsd13-4s", "freebsd14-1r", "freebsd14-2s", "freebsd15-0c", "ubuntu20", "ubuntu22", "ubuntu24"]'
QUICK_OS='["almalinux8", "almalinux9", "debian12", "fedora41", "freebsd13-3r", "freebsd14-2r", "ubuntu24"]'
# determine CI type when running on PR
ci_type="full"
if ${{ github.event_name == 'pull_request' }}; then
Expand All @@ -37,9 +49,22 @@ jobs:
os_selection="$FULL_OS"
fi
os_json=$(echo ${os_selection} | jq -c)

# Add optional runners
if [ "${{ github.event.inputs.include_stream9 }}" == 'true' ]; then
os_json=$(echo $os_json | jq -c '. += ["centos-stream9"]')
fi
if [ "${{ github.event.inputs.include_stream10 }}" == 'true' ]; then
os_json=$(echo $os_json | jq -c '. += ["centos-stream10"]')
fi

echo $os_json
echo "os=$os_json" >> $GITHUB_OUTPUT
echo "ci_type=$ci_type" >> $GITHUB_OUTPUT




qemu-vm:
name: qemu-x86
needs: [ test-config ]
Expand All @@ -49,8 +74,9 @@ jobs:
# rhl: almalinux8, almalinux9, centos-stream9, fedora40, fedora41
# debian: debian11, debian12, ubuntu20, ubuntu22, ubuntu24
# misc: archlinux, tumbleweed
# FreeBSD Release: freebsd13-3r, freebsd13-4r, freebsd14-0r, freebsd14-1r
# FreeBSD Stable: freebsd13-4s, freebsd14-1s
# FreeBSD variants of 2024-12:
# FreeBSD Release: freebsd13-3r, freebsd13-4r, freebsd14-1r, freebsd14-2r
# FreeBSD Stable: freebsd13-4s, freebsd14-2s
# FreeBSD Current: freebsd15-0c
os: ${{ fromJson(needs.test-config.outputs.test_os) }}
runs-on: ubuntu-24.04
Expand Down
2 changes: 1 addition & 1 deletion META
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Meta: 1
Name: zfs
Branch: 1.0
Version: 2.3.0
Release: rc4
Release: rc5
Release-Tags: relext
License: CDDL
Author: OpenZFS
Expand Down
32 changes: 16 additions & 16 deletions cmd/zfs/zfs_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -500,7 +500,7 @@ usage_prop_cb(int prop, void *cb)
{
FILE *fp = cb;

(void) fprintf(fp, "\t%-15s ", zfs_prop_to_name(prop));
(void) fprintf(fp, "\t%-22s ", zfs_prop_to_name(prop));

if (zfs_prop_readonly(prop))
(void) fprintf(fp, " NO ");
Expand Down Expand Up @@ -561,40 +561,40 @@ usage(boolean_t requested)
(void) fprintf(fp, "%s",
gettext("\nThe following properties are supported:\n"));

(void) fprintf(fp, "\n\t%-14s %s %s %s\n\n",
(void) fprintf(fp, "\n\t%-21s %s %s %s\n\n",
"PROPERTY", "EDIT", "INHERIT", "VALUES");

/* Iterate over all properties */
(void) zprop_iter(usage_prop_cb, fp, B_FALSE, B_TRUE,
ZFS_TYPE_DATASET);

(void) fprintf(fp, "\t%-15s ", "userused@...");
(void) fprintf(fp, "\t%-22s ", "userused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "groupused@...");
(void) fprintf(fp, "\t%-22s ", "groupused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "projectused@...");
(void) fprintf(fp, "\t%-22s ", "projectused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "userobjused@...");
(void) fprintf(fp, "\t%-22s ", "userobjused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "groupobjused@...");
(void) fprintf(fp, "\t%-22s ", "groupobjused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "projectobjused@...");
(void) fprintf(fp, "\t%-22s ", "projectobjused@...");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "userquota@...");
(void) fprintf(fp, "\t%-22s ", "userquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "groupquota@...");
(void) fprintf(fp, "\t%-22s ", "groupquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "projectquota@...");
(void) fprintf(fp, "\t%-22s ", "projectquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "userobjquota@...");
(void) fprintf(fp, "\t%-22s ", "userobjquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "groupobjquota@...");
(void) fprintf(fp, "\t%-22s ", "groupobjquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "projectobjquota@...");
(void) fprintf(fp, "\t%-22s ", "projectobjquota@...");
(void) fprintf(fp, "YES NO <size> | none\n");
(void) fprintf(fp, "\t%-15s ", "written@<snap>");
(void) fprintf(fp, "\t%-22s ", "written@<snap>");
(void) fprintf(fp, " NO NO <size>\n");
(void) fprintf(fp, "\t%-15s ", "written#<bookmark>");
(void) fprintf(fp, "\t%-22s ", "written#<bookmark>");
(void) fprintf(fp, " NO NO <size>\n");

(void) fprintf(fp, gettext("\nSizes are specified in bytes "
Expand Down
33 changes: 33 additions & 0 deletions config/kernel-pin-user-pages.m4
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
dnl #
dnl # Check for pin_user_pages_unlocked().
dnl #
AC_DEFUN([ZFS_AC_KERNEL_SRC_PIN_USER_PAGES], [
ZFS_LINUX_TEST_SRC([pin_user_pages_unlocked], [
#include <linux/mm.h>
],[
unsigned long start = 0;
unsigned long nr_pages = 1;
struct page **pages = NULL;
unsigned int gup_flags = 0;
long ret __attribute__ ((unused));

ret = pin_user_pages_unlocked(start, nr_pages, pages,
gup_flags);
])
])

AC_DEFUN([ZFS_AC_KERNEL_PIN_USER_PAGES], [

dnl #
dnl # Kernal 5.8 introduced the pin_user_pages* interfaces which should
dnl # be used for Direct I/O requests.
dnl #
AC_MSG_CHECKING([whether pin_user_pages_unlocked() is available])
ZFS_LINUX_TEST_RESULT([pin_user_pages_unlocked], [
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_PIN_USER_PAGES_UNLOCKED, 1,
[pin_user_pages_unlocked() is available])
],[
AC_MSG_RESULT(no)
])
])
57 changes: 0 additions & 57 deletions config/kernel-vfs-direct_IO.m4

This file was deleted.

Loading
Loading