From 48c5b1b42ef7be610569d966327239e1bc1aa72c Mon Sep 17 00:00:00 2001 From: eabdullin Date: Wed, 27 Mar 2024 19:36:11 +0000 Subject: [PATCH] import CS dracut-049-233.git20240115.el8 --- SOURCES/0228.patch | 33 +++++++++++++++++++++++++++ SOURCES/0229.patch | 28 +++++++++++++++++++++++ SOURCES/0230.patch | 57 ++++++++++++++++++++++++++++++++++++++++++++++ SOURCES/0231.patch | 50 ++++++++++++++++++++++++++++++++++++++++ SOURCES/0232.patch | 41 +++++++++++++++++++++++++++++++++ SPECS/dracut.spec | 16 ++++++++++++- 6 files changed, 224 insertions(+), 1 deletion(-) create mode 100644 SOURCES/0228.patch create mode 100644 SOURCES/0229.patch create mode 100644 SOURCES/0230.patch create mode 100644 SOURCES/0231.patch create mode 100644 SOURCES/0232.patch diff --git a/SOURCES/0228.patch b/SOURCES/0228.patch new file mode 100644 index 0000000..89753da --- /dev/null +++ b/SOURCES/0228.patch @@ -0,0 +1,33 @@ +From 9f4ce92bdf294cb69991c974ba440f286b43acd4 Mon Sep 17 00:00:00 2001 +From: Wenchao Hao +Date: Fri, 29 Apr 2022 14:09:02 +0800 +Subject: [PATCH] fix(iscsi): do not exit in handle_netroot() if discovery + failed + +User may specify multiple netroot in cmdline, failed to connect one netroot +do not mean all netroot are not accessible. So if one netroot failed, do +not exit the discovery and login flow. + +Signed-off-by: Wenchao Hao + +(Cherry-picked commit: 319dc7fe10585a19d1a051f8ad1ba0190f86ff1f) + +Resolves: RHEL-11779 +--- + modules.d/95iscsi/iscsiroot.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh +index 6a12a108..029060e0 100755 +--- a/modules.d/95iscsi/iscsiroot.sh ++++ b/modules.d/95iscsi/iscsiroot.sh +@@ -211,7 +211,7 @@ handle_netroot() + fi + + targets=$(iscsiadm -m discovery -t st -p $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} | sed 's/^.*iqn/iqn/') +- [ -z "$targets" ] && echo "Target discovery to $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} failed with status $?" && exit 1 ++ [ -z "$targets" ] && echo "Target discovery to $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} failed with status $?" && return 1 + + found= + for target in $targets; do + diff --git a/SOURCES/0229.patch b/SOURCES/0229.patch new file mode 100644 index 0000000..2d63074 --- /dev/null +++ b/SOURCES/0229.patch @@ -0,0 +1,28 @@ +From 243dcc41710cb8475ec4188b39fca98258baac99 Mon Sep 17 00:00:00 2001 +From: Antonio Alvarez Feijoo +Date: Thu, 1 Sep 2022 11:47:09 +0200 +Subject: [PATCH] feat(systemd): install systemd-sysroot-fstab-check + +systemd-sysroot-fstab-check is a symlink to systemd-fstab-generator added in +systemd commit https://github.com/systemd/systemd/commit/cd7ad0cb + +(cherry picked from commit 23684e4a2bb024595ad63d9f49d83b4693537110) + +Resolves: RHEL-12408 +--- + modules.d/00systemd/module-setup.sh | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh +index 38c244a2..1e75afbc 100755 +--- a/modules.d/00systemd/module-setup.sh ++++ b/modules.d/00systemd/module-setup.sh +@@ -47,6 +47,7 @@ install() { + $systemdutildir/systemd-sysctl \ + $systemdutildir/systemd-modules-load \ + $systemdutildir/systemd-vconsole-setup \ ++ $systemdutildir/systemd-sysroot-fstab-check \ + $systemdutildir/system-generators/systemd-fstab-generator \ + $systemdutildir/system-generators/systemd-gpt-auto-generator \ + \ + diff --git a/SOURCES/0230.patch b/SOURCES/0230.patch new file mode 100644 index 0000000..1c38768 --- /dev/null +++ b/SOURCES/0230.patch @@ -0,0 +1,57 @@ +From 81b6ee891bae6b2b0271f8449f7fd698e278c40a Mon Sep 17 00:00:00 2001 +From: Pavel Valena +Date: Wed, 7 Jun 2023 22:12:45 +0200 +Subject: [PATCH] fix(fcoe-uefi): exit early on empty vlan + +Exit early in case get_fcoe_boot_vlan exits with error or just an empty string, +instead of producing invalid config entry. + +(Cherry-picked commit: 45fc8df1cf3fdf9726efda4d26c7cccb9e6aedd2) + +Resolves: RHEL-16551 +--- + modules.d/95fcoe-uefi/parse-uefifcoe.sh | 31 +++++++++++++++++-------------- + 1 file changed, 17 insertions(+), 14 deletions(-) + +diff --git a/modules.d/95fcoe-uefi/parse-uefifcoe.sh b/modules.d/95fcoe-uefi/parse-uefifcoe.sh +index 87d49660..02fab138 100755 +--- a/modules.d/95fcoe-uefi/parse-uefifcoe.sh ++++ b/modules.d/95fcoe-uefi/parse-uefifcoe.sh +@@ -9,20 +9,23 @@ print_fcoe_uefi_conf() + local mac dev vlan + mac=$(get_fcoe_boot_mac "$1") + [ -z "$mac" ] && return 1 +- dev=$(set_ifname fcoe $mac) +- vlan=$(get_fcoe_boot_vlan "$1") +- if [ "$vlan" -ne "0" ]; then +- case "$vlan" in +- [0-9]*) +- printf "%s\n" "vlan=$dev.$vlan:$dev" +- dev="$dev.$vlan" +- ;; +- *) +- printf "%s\n" "vlan=$vlan:$dev" +- dev="$vlan" +- ;; +- esac +- fi ++ dev=$(set_ifname fcoe "$mac") ++ vlan=$(get_fcoe_boot_vlan "$1") || return 1 ++ case "$vlan" in ++ "0") ;; ++ ++ '') ++ return 1 ++ ;; ++ [0-9]*) ++ printf "%s\n" "vlan=$dev.$vlan:$dev" ++ dev="$dev.$vlan" ++ ;; ++ *) ++ printf "%s\n" "vlan=$vlan:$dev" ++ dev="$vlan" ++ ;; ++ esac + # fcoe=eth0:nodcb + printf "fcoe=%s\n" "$dev:nodcb" + return 0 diff --git a/SOURCES/0231.patch b/SOURCES/0231.patch new file mode 100644 index 0000000..b0f490d --- /dev/null +++ b/SOURCES/0231.patch @@ -0,0 +1,50 @@ +From d28f91126a6d76503155e462b4e9f1a052f412ad Mon Sep 17 00:00:00 2001 +From: Antonio Alvarez Feijoo +Date: Mon, 14 Aug 2023 12:28:11 +0200 +Subject: [PATCH] fix(dracut.sh): remove microcode check based on + CONFIG_MICROCODE_[AMD|INTEL] + +`CONFIG_MICROCODE_AMD` and `CONFIG_MICROCODE_INTEL` are hidden since +https://lore.kernel.org/all/20230810160805.081212701@linutronix.de/, therefore +this check is wrong and early microcode is always disabled. + +(Cherry-picked commit: 61b9cd16e049434597e398be61a47e0112382c5b) + +Resolves: RHEL-21023 +--- + dracut.sh | 11 ++++------- + 1 file changed, 4 insertions(+), 7 deletions(-) + +diff --git a/dracut.sh b/dracut.sh +index 869b90b0..42e1650a 100755 +--- a/dracut.sh ++++ b/dracut.sh +@@ -1084,23 +1084,20 @@ fi + + if [[ $early_microcode = yes ]]; then + if [[ $hostonly ]]; then +- if [[ $(get_cpu_vendor) == "AMD" ]]; then +- check_kernel_config CONFIG_MICROCODE_AMD || unset early_microcode +- elif [[ $(get_cpu_vendor) == "Intel" ]]; then +- check_kernel_config CONFIG_MICROCODE_INTEL || unset early_microcode ++ if [[ $(get_cpu_vendor) == "AMD" || $(get_cpu_vendor) == "Intel" ]]; then ++ check_kernel_config CONFIG_MICROCODE || unset early_microcode + else + unset early_microcode + fi + else +- ! check_kernel_config CONFIG_MICROCODE_AMD \ +- && ! check_kernel_config CONFIG_MICROCODE_INTEL \ ++ ! check_kernel_config CONFIG_MICROCODE \ + && unset early_microcode + fi + # Do not complain on non-x86 architectures as it makes no sense + case $(uname -m) in + x86_64|i?86) + [[ $early_microcode != yes ]] \ +- && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]!=y" ++ && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE!=y" + ;; + *) ;; + esac + diff --git a/SOURCES/0232.patch b/SOURCES/0232.patch new file mode 100644 index 0000000..e4d1081 --- /dev/null +++ b/SOURCES/0232.patch @@ -0,0 +1,41 @@ +From 141a2ecf03efb77c0622dcc96b503e6344f63938 Mon Sep 17 00:00:00 2001 +From: Coiby Xu +Date: Wed, 14 Jul 2021 15:26:10 +0800 +Subject: [PATCH] fix(qeth_rules): check the existence of + /sys/devices/qeth/*/online beforehand + +On s390x KVM machines, the follow errors occurred, + $ kdumpctl rebuild + kdump: Rebuilding /boot/initramfs-4.18.0-321.el8.s390xkdump.img + /usr/lib/dracut/modules.d/95qeth_rules/module-setup.sh: line 13: /sys/devices/qeth/*/online: No such file or directory + /usr/lib/dracut/modules.d/95qeth_rules/module-setup.sh: line 13: /sys/devices/qeth/*/online: No such file or directory + +because s390x KVM uses virtual devices and /sys/devices/qeth/*/online +doesn't exist. Eliminate this error by checking the existence +beforehand. + +(Cherry-picked commit: 04fd4f0139c25e6f3846e759de15ac80ec807887) + +Resolves: RHEL-17239 +--- + modules.d/95qeth_rules/module-setup.sh | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/modules.d/95qeth_rules/module-setup.sh b/modules.d/95qeth_rules/module-setup.sh +index d4d15118..1a067e90 100755 +--- a/modules.d/95qeth_rules/module-setup.sh ++++ b/modules.d/95qeth_rules/module-setup.sh +@@ -10,9 +10,10 @@ check() { + + [[ $hostonly ]] && { + for i in /sys/devices/qeth/*/online; do +- read _online < $i +- [ $_online -eq 1 ] && return 0 +- done ++ [ ! -f "$i" ] && continue ++ read -r _online < "$i" ++ [ "$_online" -eq 1 ] && return 0 ++ done + } + return 255 + } diff --git a/SPECS/dracut.spec b/SPECS/dracut.spec index a5eeb6a..671cf38 100644 --- a/SPECS/dracut.spec +++ b/SPECS/dracut.spec @@ -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 228.git20230802 +%define dist_free_release 233.git20240115 Name: dracut Version: 049 @@ -255,6 +255,11 @@ Patch224: 0224.patch Patch225: 0225.patch Patch226: 0226.patch Patch227: 0227.patch +Patch228: 0228.patch +Patch229: 0229.patch +Patch230: 0230.patch +Patch231: 0231.patch +Patch232: 0232.patch Source1: https://www.gnu.org/licenses/lgpl-2.1.txt @@ -710,6 +715,15 @@ echo '# Since rhel-8.3 dracut moved to use NetworkManager add_dracutmodules+=" network-legacy "' > /etc/dracut.conf.d/50-network-legacy.conf %changelog +* Mon Jan 15 2024 Pavel Valena - 049-233.git20240115 +- fix(dracut.sh): remove microcode check based on +- fix(qeth_rules): check the existence of + +* Thu Nov 16 2023 Pavel Valena - 049-231.git20231115 +- fix(iscsi): do not exit in handle_netroot() if discovery +- feat(systemd): install systemd-sysroot-fstab-check +- fix(fcoe-uefi): exit early on empty vlan + * Wed Aug 02 2023 Lukas Nykryn - 049-228.git20230802 - feat(qemu): include the virtio_mem kernel module