dracut/0513-Fix-regression-caused-by-6f9bf2b8ac436259bdccb110545.patch
Daniel Molkentin 8fea8b9671 Accepting request 486360 from home:dmolkentin:branches:Base:System
- Fix mdraid regression (bsc#1028542)
  * adds 0513-Fix-regression-caused-by-6f9bf2b8ac436259bdccb110545.patch 
- man: make the -k option clear using mkinitrd (bsc#1012656)
  * adds 0514-man-make-the-k-option-clear-using-mkinitrd.patch

OBS-URL: https://build.opensuse.org/request/show/486360
OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=298
2017-04-07 10:18:06 +00:00

57 lines
2.2 KiB
Diff

From 31445aa3a415f9586f3bd6f6b14f0ae668d30ff9 Mon Sep 17 00:00:00 2001
From: Daniel Molkentin <dmolkentin@suse.com>
Date: Thu, 9 Mar 2017 11:45:47 +0100
Subject: [PATCH 1/2] Fix regression caused by
6f9bf2b8ac436259bdccb11054562aedaa78c496
This was trying to fix bsc#998860, but introduced a regression:
62-md-dracut-uuid.rules was not generated in /etc/udev/rules.d and
therefore not processed.
Also, force reassembly of raid arrays given at the command line
and ensure IMSM_NO_PLATFORM is set correctly.
Reference: bsc#1028542
Signed-Off-By: Daniel Molkentin <dmolkentin@suse.com>
Signed-Off-By: Thomas Blume <thomas.blume@suse.com>
---
modules.d/90mdraid/parse-md.sh | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/modules.d/90mdraid/parse-md.sh b/modules.d/90mdraid/parse-md.sh
index c187a916..91e52f2d 100755
--- a/modules.d/90mdraid/parse-md.sh
+++ b/modules.d/90mdraid/parse-md.sh
@@ -1,7 +1,7 @@
#!/bin/sh
MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=)
-MD_RULES=/etc/udev/62-md-dracut-uuid.rules
+MD_RULES=/etc/udev/rules.d/62-md-dracut-uuid.rules
if ( ! [ -n "$MD_UUID" ] && ! getargbool 0 rd.auto ) || ! getargbool 1 rd.md -d -n rd_NO_MD; then
info "rd.md=0: removing MD RAID activation"
@@ -13,6 +13,8 @@ else
printf 'SUBSYSTEM!="block", GOTO="md_uuid_end"\n' >> $MD_RULES
printf 'ENV{ID_FS_TYPE}!="ddf_raid_member", ENV{ID_FS_TYPE}!="isw_raid_member", ENV{ID_FS_TYPE}!="linux_raid_member", GOTO="md_uuid_end"\n' >> $MD_RULES
+ #check for array components
+ printf 'IMPORT{program}="/sbin/mdadm --examine --export $tempnode"\n' >> $MD_RULES
for uuid in $MD_UUID; do
printf 'ENV{MD_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid >> $MD_RULES
printf 'ENV{ID_FS_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid >> $MD_RULES
@@ -20,7 +22,7 @@ else
printf 'ENV{ID_FS_TYPE}="unknown"\n' >> $MD_RULES
printf 'GOTO="md_uuid_end"\n' >> $MD_RULES
printf 'LABEL="md_uuid_ok"\n' >> $MD_RULES
- printf 'ENV{IMSM_NO_PLATFORM}="1"' >> $MD_RULES
+ printf 'ENV{IMSM_NO_PLATFORM}="1"\n' >> $MD_RULES
printf 'LABEL="md_uuid_end"\n' >> $MD_RULES
fi
fi
--
2.12.0