import UBI dracut-057-89.git20250311.el9_6

This commit is contained in:
eabdullin 2025-11-04 10:27:43 +00:00
parent 222fdb21aa
commit 1fc4968fa2
4 changed files with 169 additions and 1 deletions

56
SOURCES/0096.patch Normal file
View File

@ -0,0 +1,56 @@
From f7e5515272ec62735a283addc642a3930ee5e943 Mon Sep 17 00:00:00 2001
From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
Date: Mon, 3 Mar 2025 15:22:14 +0100
Subject: [PATCH] chore(multipath): remove `rd_NO_MULTIPATH` kernel command
line option
Deprecated since 778b3543609d8c9d32df7111229f4072d00d02f0 (Nov 25, 2014).
(cherry picked from commit 954420374a63be32f6ece5fc1476ba18163da1f7)
Related: RHEL-109565
---
man/dracut.cmdline.7.asc | 2 --
modules.d/90multipath/multipathd.service | 1 -
modules.d/90multipath/multipathd.sh | 2 +-
3 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/man/dracut.cmdline.7.asc b/man/dracut.cmdline.7.asc
index abe1ec3f..697f81d9 100644
--- a/man/dracut.cmdline.7.asc
+++ b/man/dracut.cmdline.7.asc
@@ -1383,8 +1383,6 @@ rd_NO_MD:: rd.md=0
rd_MD_UUID:: rd.md.uuid
-rd_NO_MULTIPATH: rd.multipath=0
-
rd_NFS_DOMAIN:: rd.nfs.domain
iscsi_initiator:: rd.iscsi.initiator
diff --git a/modules.d/90multipath/multipathd.service b/modules.d/90multipath/multipathd.service
index e8182533..1ff7201a 100644
--- a/modules.d/90multipath/multipathd.service
+++ b/modules.d/90multipath/multipathd.service
@@ -11,7 +11,6 @@ Conflicts=shutdown.target
Conflicts=initrd-cleanup.service
ConditionKernelCommandLine=!nompath
ConditionKernelCommandLine=!rd.multipath=0
-ConditionKernelCommandLine=!rd_NO_MULTIPATH
ConditionKernelCommandLine=!multipath=off
ConditionVirtualization=!container
diff --git a/modules.d/90multipath/multipathd.sh b/modules.d/90multipath/multipathd.sh
index 385a95fb..62649003 100755
--- a/modules.d/90multipath/multipathd.sh
+++ b/modules.d/90multipath/multipathd.sh
@@ -5,7 +5,7 @@ if [ "$(getarg rd.multipath)" = "default" ] && [ ! -e /etc/multipath.conf ]; the
mpathconf --enable
fi
-if getargbool 1 rd.multipath -d -n rd_NO_MULTIPATH && [ -e /etc/multipath.conf ]; then
+if getargbool 1 rd.multipath && [ -e /etc/multipath.conf ]; then
modprobe dm-multipath
multipathd -B || multipathd
need_shutdown

46
SOURCES/0097.patch Normal file
View File

@ -0,0 +1,46 @@
From b0c8aaecda1d62aa925d70fcadc071e9c85c2621 Mon Sep 17 00:00:00 2001
From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
Date: Mon, 3 Mar 2025 15:23:41 +0100
Subject: [PATCH] refactor(multipath): remove custom multipathd.service
Install `multipathd.service` provided by upstream, and add a dropin to support
`rd.multipath=0`.
(cherry picked from commit bb343fa83de4c73890e9054329249a1491733a5c)
Resolves: RHEL-109565
---
modules.d/90multipath/module-setup.sh | 3 ++-
modules.d/90multipath/multipathd-dracut.conf | 2 ++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh
index 541e243a..2f4ac869 100755
--- a/modules.d/90multipath/module-setup.sh
+++ b/modules.d/90multipath/module-setup.sh
@@ -90,6 +90,7 @@ install() {
[[ -d $config_dir ]] || config_dir=/etc/multipath/conf.d
inst_multiple \
+ "$systemdsystemunitdir"/multipathd.service \
pkill \
pidof \
kpartx \
@@ -137,7 +138,7 @@ install() {
inst_simple "${moddir}/multipathd-configure.service" "${systemdsystemunitdir}/multipathd-configure.service"
$SYSTEMCTL -q --root "$initdir" enable multipathd-configure.service
fi
- inst_simple "${moddir}/multipathd.service" "${systemdsystemunitdir}/multipathd.service"
+ inst_simple "$moddir/multipathd-dracut.conf" "$systemdsystemunitdir/multipathd.service.d/multipathd-dracut.conf"
$SYSTEMCTL -q --root "$initdir" enable multipathd.service
else
inst_hook pre-trigger 02 "$moddir/multipathd.sh"
diff --git a/modules.d/90multipath/multipathd-dracut.conf b/modules.d/90multipath/multipathd-dracut.conf
new file mode 100644
index 00000000..783b05d5
--- /dev/null
+++ b/modules.d/90multipath/multipathd-dracut.conf
@@ -0,0 +1,2 @@
+[Unit]
+ConditionKernelCommandLine=!rd.multipath=0

54
SOURCES/0102.patch Normal file
View File

@ -0,0 +1,54 @@
From ae61b2c93a032c3e74950d6730d32363fed9621f Mon Sep 17 00:00:00 2001
From: Benjamin Marzinski <bmarzins@redhat.com>
Date: Thu, 24 Apr 2025 17:51:01 -0400
Subject: [PATCH] fix(multipath): disable user_friendly_names with mpathconf
If dracut is creating /etc/multipath.conf by calling mpathconf in either
multipathd-configure.service or multipathd.sh, there is a chance that
the multipath config in the real root differs. Specifically, it might
have chosen different user_friendly_names for the devices. When the
systems switches to the real root, multipath may not be able to switch
the devices to their configured names because those might already be
in use. To avoid this, call mpathconf with "--user_friendly_names n"
to create a multipath.conf with user_friendly_names disabled. If all
devices use WWID names, it is always possible for multipath to rename
them later.
Fixes b8a92b715 ("multipath: add automatic configuration for multipath")
(cherry picked from commit f36f2869859eb5f9613a94a28dfaf31505e645cc)
Resolves: RHEL-96101
---
modules.d/90multipath/multipathd-configure.service | 2 +-
modules.d/90multipath/multipathd.sh | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/modules.d/90multipath/multipathd-configure.service b/modules.d/90multipath/multipathd-configure.service
index de690615..6dedd9b9 100644
--- a/modules.d/90multipath/multipathd-configure.service
+++ b/modules.d/90multipath/multipathd-configure.service
@@ -13,7 +13,7 @@ ConditionPathExists=!/etc/multipath.conf
[Service]
Type=oneshot
ExecStartPre=-/usr/bin/mkdir -p /etc/multipath/multipath.conf.d
-ExecStart=/usr/sbin/mpathconf --enable
+ExecStart=/usr/sbin/mpathconf --enable --user_friendly_names n
[Install]
WantedBy=sysinit.target
diff --git a/modules.d/90multipath/multipathd.sh b/modules.d/90multipath/multipathd.sh
index 62649003..6b6b2666 100755
--- a/modules.d/90multipath/multipathd.sh
+++ b/modules.d/90multipath/multipathd.sh
@@ -2,7 +2,8 @@
if [ "$(getarg rd.multipath)" = "default" ] && [ ! -e /etc/multipath.conf ]; then
mkdir -p /etc/multipath/multipath.conf.d
- mpathconf --enable
+ mpathconf --enable --user_friendly_names n
+
fi
if getargbool 1 rd.multipath && [ -e /etc/multipath.conf ]; then

View File

@ -5,7 +5,7 @@
# strip the automatically generated dep here and instead co-own the
# directory.
%global __requires_exclude pkg-config
%define dist_free_release 88.git20250311
%define dist_free_release 89.git20250311
Name: dracut
Version: 057
@ -117,6 +117,11 @@ Patch85: 0085.patch
Patch86: 0086.patch
Patch89: 0089.patch
Patch96: 0096.patch
Patch97: 0097.patch
Patch102: 0102.patch
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
BuildRequires: bash
@ -572,6 +577,13 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
%changelog
* Fri Sep 19 2025 Pavel Valena <pvalena@redhat.com> - 057-89.git20250311
- chore(multipath): remove `rd_NO_MULTIPATH` kernel command
- refactor(multipath): remove custom multipathd.service
- fix(multipath): disable user_friendly_names with mpathconf
Resolves: RHEL-109565
Resolves: RHEL-96101
* Mon Jun 09 2025 Pavel Valena <pvalena@redhat.com> - 057-88.git20250311
- fix(dracut.sh): don't pass empty string as dir