From 66b535242ece6b6f1f59df37364a670a3016294e Mon Sep 17 00:00:00 2001 From: hongjinghao Date: Mon, 5 Feb 2024 09:51:03 +0800 Subject: [PATCH] fix(mdraid):allow UUID comparison for more than one UUID (cherry picked from commit b9caf95fd1d520a69b672ff542899a99f9dedf28) --- ...-UUID-comparison-for-more-than-one-U.patch | 33 +++++++++++++++++++ dracut.spec | 6 +++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 backport-fix-mdraid-allow-UUID-comparison-for-more-than-one-U.patch diff --git a/backport-fix-mdraid-allow-UUID-comparison-for-more-than-one-U.patch b/backport-fix-mdraid-allow-UUID-comparison-for-more-than-one-U.patch new file mode 100644 index 0000000..4d42085 --- /dev/null +++ b/backport-fix-mdraid-allow-UUID-comparison-for-more-than-one-U.patch @@ -0,0 +1,33 @@ +From d364ce8334fef96f48492bd0fb3b7deac37bbb66 Mon Sep 17 00:00:00 2001 +From: Alexander Wenzel +Date: Tue, 2 Nov 2021 09:25:56 +0100 +Subject: [PATCH] fix(mdraid): allow UUID comparison for more than one UUID + +If the system provides more than one UUID, the _MD_UUID var +contains a line break after each UUID. Therefore the strstr +function could not find any UUID, caused by the additional +spaces provided to the function. + +Furthermore this could lead to a boot interruption, because +the start of a degraded raid1 won't be executed. So, manual +interaction is necessary. +--- + modules.d/90mdraid/mdraid_start.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules.d/90mdraid/mdraid_start.sh b/modules.d/90mdraid/mdraid_start.sh +index 9ac171d3..7b3d0de7 100755 +--- a/modules.d/90mdraid/mdraid_start.sh ++++ b/modules.d/90mdraid/mdraid_start.sh +@@ -54,7 +54,7 @@ _md_force_run() { + _UUID=$(str_replace "$_UUID" ":" "") + + # check if we should handle this device +- strstr " $_MD_UUID " " $_UUID " || continue ++ strstr "$_MD_UUID" "$_UUID" || continue + + _md_start "${_md}" + done +-- +2.33.0 + diff --git a/dracut.spec b/dracut.spec index 002ebff..16f9356 100644 --- a/dracut.spec +++ b/dracut.spec @@ -9,7 +9,7 @@ Name: dracut Version: 055 -Release: 9 +Release: 10 Summary: Initramfs generator using udev @@ -44,6 +44,7 @@ Patch17: backport-fix-dracut-functions.sh-get-block-device-driver-if-i.patch Patch18: backport-fix-fs-lib-remove-quoting-form-the-first-argument-of.patch Patch19: backport-fix-dracut.sh-exit-if-resolving-executable-dependenc.patch Patch20: backport-fix-dracut-install-protect-against-broken-links-poin.patch +Patch21: backport-fix-mdraid-allow-UUID-comparison-for-more-than-one-U.patch Patch9000: remove-iscsi-related-code-since-it-is-no-longer-main.patch @@ -520,6 +521,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne %endif %changelog +* Mon Feb 5 2024 hongjinghao - 055-10 +- fix(mdraid):allow UUID comparison for more than one UUID. + * Mon Dec 4 2023 huyubiao - 055-9 - Type:bugfix - CVE:NA -- Gitee