summaryrefslogtreecommitdiff
path: root/sys-fs/zfs-utils
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-01-02 14:48:22 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-01-02 14:48:22 +0000
commit77de10eb38e5e191674adaf754c0bbaef9d39d1d (patch)
tree8a07541f95cac0182502a197bb33afa767494dd0 /sys-fs/zfs-utils
parent74037b183fe174d9695137a216190756a905203a (diff)
sys-fs/zfs-utils : revision bump
Diffstat (limited to 'sys-fs/zfs-utils')
-rw-r--r--sys-fs/zfs-utils/files/2.1.5-dracut-mount.patch29
-rw-r--r--sys-fs/zfs-utils/files/2.1.5-dracut-zfs-missing.patch14
-rw-r--r--sys-fs/zfs-utils/files/2.1.5-r2-dracut-non-root.patch60
-rw-r--r--sys-fs/zfs-utils/files/2.1.6-fgrep.patch53
-rw-r--r--sys-fs/zfs-utils/files/2.1.7-dracut-include-systemd-overrides.patch44
-rw-r--r--sys-fs/zfs-utils/files/2.1.7-systemd-zed-restart-always.patch27
-rw-r--r--sys-fs/zfs-utils/zfs-utils-2.1.7-r1.ebuild (renamed from sys-fs/zfs-utils/zfs-utils-2.1.7.ebuild)15
7 files changed, 239 insertions, 3 deletions
diff --git a/sys-fs/zfs-utils/files/2.1.5-dracut-mount.patch b/sys-fs/zfs-utils/files/2.1.5-dracut-mount.patch
new file mode 100644
index 00000000..758f4b3a
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.5-dracut-mount.patch
@@ -0,0 +1,29 @@
+https://github.com/openzfs/zfs/commit/07f2793e869196fcbcd5057d9ada377674262fe3
+https://bugs.gentoo.org/857228
+
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Date: Wed, 29 Jun 2022 15:33:38 -0700
+Subject: [PATCH] dracut: fix typo in mount-zfs.sh.in
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Format the `zpool get` command correctly. The -o option must
+be followed by "all" or the requested field name.
+
+Reviewed-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
+Reviewed-by: George Melikov <mail@gmelikov.ru>
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Closes #13602
+--- a/contrib/dracut/90zfs/mount-zfs.sh.in
++++ b/contrib/dracut/90zfs/mount-zfs.sh.in
+@@ -82,7 +82,7 @@ ZFS_DATASET="${ZFS_DATASET:-${root}}"
+ ZFS_POOL="${ZFS_DATASET%%/*}"
+
+
+-if ! zpool get -Ho name "${ZFS_POOL}" > /dev/null 2>&1; then
++if ! zpool get -Ho value name "${ZFS_POOL}" > /dev/null 2>&1; then
+ info "ZFS: Importing pool ${ZFS_POOL}..."
+ # shellcheck disable=SC2086
+ if ! zpool import -N ${ZPOOL_IMPORT_OPTS} "${ZFS_POOL}"; then
+
diff --git a/sys-fs/zfs-utils/files/2.1.5-dracut-zfs-missing.patch b/sys-fs/zfs-utils/files/2.1.5-dracut-zfs-missing.patch
new file mode 100644
index 00000000..077bcd55
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.5-dracut-zfs-missing.patch
@@ -0,0 +1,14 @@
+https://github.com/openzfs/zfs/commit/ebbfc6cb853d2d2f3f0671362d5ff5588be39e9d
+https://github.com/openzfs/zfs/issues/13595
+--- b/contrib/dracut/90zfs/module-setup.sh.in
++++ a/contrib/dracut/90zfs/module-setup.sh.in
+@@ -19,7 +19,7 @@
+ }
+
+ installkernel() {
++ instmods zfs
+- instmods -c zfs
+ }
+
+ install() {
+
diff --git a/sys-fs/zfs-utils/files/2.1.5-r2-dracut-non-root.patch b/sys-fs/zfs-utils/files/2.1.5-r2-dracut-non-root.patch
new file mode 100644
index 00000000..a9c6130f
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.5-r2-dracut-non-root.patch
@@ -0,0 +1,60 @@
+https://github.com/openzfs/zfs/commit/eefe83eaa68f7cb4a49c580dd940d3688e42c849
+https://bugs.gentoo.org/854333
+
+From eefe83eaa68f7cb4a49c580dd940d3688e42c849 Mon Sep 17 00:00:00 2001
+From: Toyam Cox <aviator45003@gmail.com>
+Date: Thu, 30 Jun 2022 13:47:58 -0400
+Subject: [PATCH] dracut: fix boot on non-zfs-root systems
+
+Simply prevent overwriting root until it needs to be overwritten.
+
+Dracut could change this value before this module is called, but won't
+change the kernel command line.
+
+Reviewed-by: Andrew J. Hesford <ajh@sideband.org>
+Signed-off-by: Toyam Cox <vaelatern@voidlinux.org>
+Closes #13592
+---
+ contrib/dracut/90zfs/zfs-lib.sh.in | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/contrib/dracut/90zfs/zfs-lib.sh.in b/contrib/dracut/90zfs/zfs-lib.sh.in
+index e44673c2d75..3a43e514d6f 100755
+--- a/contrib/dracut/90zfs/zfs-lib.sh.in
++++ b/contrib/dracut/90zfs/zfs-lib.sh.in
+@@ -88,11 +88,11 @@ decode_root_args() {
+ return
+ fi
+
+- root=$(getarg root=)
++ xroot=$(getarg root=)
+ rootfstype=$(getarg rootfstype=)
+
+ # shellcheck disable=SC2249
+- case "$root" in
++ case "$xroot" in
+ ""|zfs|zfs:|zfs:AUTO)
+ root=zfs:AUTO
+ rootfstype=zfs
+@@ -100,7 +100,7 @@ decode_root_args() {
+ ;;
+
+ ZFS=*|zfs:*)
+- root="${root#zfs:}"
++ root="${xroot#zfs:}"
+ root="${root#ZFS=}"
+ root=$(echo "$root" | tr '+' ' ')
+ rootfstype=zfs
+@@ -109,9 +109,9 @@ decode_root_args() {
+ esac
+
+ if [ "$rootfstype" = "zfs" ]; then
+- case "$root" in
++ case "$xroot" in
+ "") root=zfs:AUTO ;;
+- *) root=$(echo "$root" | tr '+' ' ') ;;
++ *) root=$(echo "$xroot" | tr '+' ' ') ;;
+ esac
+ return 0
+ fi
+
diff --git a/sys-fs/zfs-utils/files/2.1.6-fgrep.patch b/sys-fs/zfs-utils/files/2.1.6-fgrep.patch
new file mode 100644
index 00000000..2e47c5bc
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.6-fgrep.patch
@@ -0,0 +1,53 @@
+https://github.com/openzfs/zfs/commit/d30577c9dd811688f2609ad532b011b99bceb485
+
+From d30577c9dd811688f2609ad532b011b99bceb485 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= <nabijaczleweli@nabijaczleweli.xyz>
+Date: Sat, 12 Mar 2022 00:26:46 +0100
+Subject: [PATCH] fgrep -> grep -F
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Reviewed-by: John Kennedy <john.kennedy@delphix.com>
+Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
+Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz>
+Closes #13259
+--- a/config/kernel.m4
++++ b/config/kernel.m4
+@@ -394,11 +394,11 @@ AC_DEFUN([ZFS_AC_KERNEL], [
+ utsrelease1=$kernelbuild/include/linux/version.h
+ utsrelease2=$kernelbuild/include/linux/utsrelease.h
+ utsrelease3=$kernelbuild/include/generated/utsrelease.h
+- AS_IF([test -r $utsrelease1 && fgrep -q UTS_RELEASE $utsrelease1], [
++ AS_IF([test -r $utsrelease1 && grep -qF UTS_RELEASE $utsrelease1], [
+ utsrelease=$utsrelease1
+- ], [test -r $utsrelease2 && fgrep -q UTS_RELEASE $utsrelease2], [
++ ], [test -r $utsrelease2 && grep -qF UTS_RELEASE $utsrelease2], [
+ utsrelease=$utsrelease2
+- ], [test -r $utsrelease3 && fgrep -q UTS_RELEASE $utsrelease3], [
++ ], [test -r $utsrelease3 && grep -qF UTS_RELEASE $utsrelease3], [
+ utsrelease=$utsrelease3
+ ])
+
+--- a/config/zfs-build.m4
++++ b/config/zfs-build.m4
+@@ -173,7 +173,7 @@ AC_DEFUN([ZFS_AC_DEBUG_KMEM_TRACKING], [
+ ])
+
+ AC_DEFUN([ZFS_AC_DEBUG_INVARIANTS_DETECT_FREEBSD], [
+- AS_IF([sysctl -n kern.conftxt | fgrep -qx $'options\tINVARIANTS'],
++ AS_IF([sysctl -n kern.conftxt | grep -Fqx $'options\tINVARIANTS'],
+ [enable_invariants="yes"],
+ [enable_invariants="no"])
+ ])
+--- a/tests/zfs-tests/tests/functional/cli_root/zpool_wait/zpool_wait.kshlib
++++ b/tests/zfs-tests/tests/functional/cli_root/zpool_wait/zpool_wait.kshlib
+@@ -120,5 +120,5 @@ function check_while_waiting
+ # Whether any vdev in the given pool is initializing
+ function is_vdev_initializing # pool
+ {
+- zpool status -i "$1" | grep 'initialized, started' >/dev/null
++ zpool status -i "$1" | grep -q 'initialized, started'
+ }
+
diff --git a/sys-fs/zfs-utils/files/2.1.7-dracut-include-systemd-overrides.patch b/sys-fs/zfs-utils/files/2.1.7-dracut-include-systemd-overrides.patch
new file mode 100644
index 00000000..2a50dc65
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.7-dracut-include-systemd-overrides.patch
@@ -0,0 +1,44 @@
+From b10f73f78eb223dd799a87474c537a69113edee1 Mon Sep 17 00:00:00 2001
+From: Vince van Oosten <techhazard@codeforyouand.me>
+Date: Sun, 23 Oct 2022 10:55:46 +0200
+Subject: [PATCH] include systemd overrides to zfs-dracut module
+
+If a user that uses systemd and dracut wants to overide certain
+settings, they typically use `systemctl edit [unit]` or place a file in
+`/etc/systemd/system/[unit].d/override.conf` directly.
+
+The zfs-dracut module did not include those overrides however, so this
+did not have any effect at boot time.
+
+For zfs-import-scan.service and zfs-import-cache.service, overrides are
+now included in the dracut initramfs image.
+
+Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Signed-off-by: Vince van Oosten <techhazard@codeforyouand.me>
+Closes #14075
+Closes #14076
+---
+ contrib/dracut/90zfs/module-setup.sh.in | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/contrib/dracut/90zfs/module-setup.sh.in b/contrib/dracut/90zfs/module-setup.sh.in
+index 81d7d2abe49..b16529de905 100755
+--- a/contrib/dracut/90zfs/module-setup.sh.in
++++ b/contrib/dracut/90zfs/module-setup.sh.in
+@@ -86,6 +86,16 @@ install() {
+ "zfs-import-cache.service"; do
+ inst_simple "${systemdsystemunitdir}/${_service}"
+ systemctl -q --root "${initdir}" add-wants zfs-import.target "${_service}"
++
++ # Add user-provided unit overrides
++ # - /etc/systemd/system/zfs-import-{scan,cache}.service
++ # - /etc/systemd/system/zfs-import-{scan,cache}.service.d/overrides.conf
++ # -H ensures they are marked host-only
++ # -o ensures there is no error upon absence of these files
++ inst_multiple -o -H \
++ "${systemdsystemconfdir}/${_service}" \
++ "${systemdsystemconfdir}/${_service}.d/"*.conf
++
+ done
+
+ for _service in \
diff --git a/sys-fs/zfs-utils/files/2.1.7-systemd-zed-restart-always.patch b/sys-fs/zfs-utils/files/2.1.7-systemd-zed-restart-always.patch
new file mode 100644
index 00000000..2d4b92d5
--- /dev/null
+++ b/sys-fs/zfs-utils/files/2.1.7-systemd-zed-restart-always.patch
@@ -0,0 +1,27 @@
+From f505cd53fd9cb6e6efb1e23a9d77e38bba754695 Mon Sep 17 00:00:00 2001
+From: George Melikov <mail@gmelikov.ru>
+Date: Fri, 16 Dec 2022 01:11:02 +0300
+Subject: [PATCH] systemd: set restart=always for zfs-zed.service
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: George Melikov <mail@gmelikov.ru>
+Co-authored-by: Attila Fülöp <attila@fueloep.org>
+---
+ etc/systemd/system/zfs-zed.service.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/etc/systemd/system/zfs-zed.service.in b/etc/systemd/system/zfs-zed.service.in
+index 73a83e59e51..be2fc67348f 100644
+--- a/etc/systemd/system/zfs-zed.service.in
++++ b/etc/systemd/system/zfs-zed.service.in
+@@ -6,7 +6,7 @@ ConditionPathIsDirectory=/sys/module/zfs
+ [Service]
+ EnvironmentFile=-@initconfdir@/zfs
+ ExecStart=@sbindir@/zed -F
+-Restart=on-abort
++Restart=always
+
+ [Install]
+ Alias=zed.service
diff --git a/sys-fs/zfs-utils/zfs-utils-2.1.7.ebuild b/sys-fs/zfs-utils/zfs-utils-2.1.7-r1.ebuild
index 82db2349..bda272ce 100644
--- a/sys-fs/zfs-utils/zfs-utils-2.1.7.ebuild
+++ b/sys-fs/zfs-utils/zfs-utils-2.1.7-r1.ebuild
@@ -23,10 +23,10 @@ SLOT="0"
IUSE="debug nls pam python test-suite"
DEPEND="
- net-libs/libtirpc
+ net-libs/libtirpc:=
sys-apps/util-linux
sys-libs/zlib
- virtual/libudev
+ virtual/libudev:=
dev-libs/openssl:0=
pam? ( sys-libs/pam )
python? (
@@ -43,7 +43,7 @@ BDEPEND="app-alternatives/awk
"
RDEPEND="${DEPEND}
- !prefix? ( virtual/udev )
+ virtual/udev
sys-fs/udev-init-scripts
test-suite? (
sys-apps/kmod[tools]
@@ -60,6 +60,15 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RESTRICT="test"
+PATCHES=(
+ "${FILESDIR}"/2.1.5-r2-dracut-non-root.patch
+ "${FILESDIR}"/2.1.5-dracut-zfs-missing.patch
+ "${FILESDIR}"/2.1.5-dracut-mount.patch
+ "${FILESDIR}"/2.1.6-fgrep.patch
+ "${FILESDIR}"/2.1.7-dracut-include-systemd-overrides.patch
+ "${FILESDIR}"/2.1.7-systemd-zed-restart-always.patch
+)
+
src_prepare() {
default