[Bug 826727] New: mkinitrd selects wrong md device from where to mount root file system
https://bugzilla.novell.com/show_bug.cgi?id=826727 https://bugzilla.novell.com/show_bug.cgi?id=826727#c0 Summary: mkinitrd selects wrong md device from where to mount root file system Classification: openSUSE Product: openSUSE 12.3 Version: Final Platform: x86-64 OS/Version: openSUSE 12.3 Status: NEW Severity: Major Priority: P5 - None Component: Basesystem AssignedTo: bnc-team-screening@forge.provo.novell.com ReportedBy: martti.laaksonen@tecnotree.com QAContact: qa-bugs@suse.de Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0 In a LVM root system, where there are several (>10) LVM logical volumes created on top different MD devices, mkinitrd creates an invalid mdadm.conf which activates wrong MD device during boot so the kernel is not able mount its root file system. In my system I have the following LVM and MD setup: darkside:~ # pvs PV VG Fmt Attr PSize PFree /dev/md2 sys lvm2 a-- 80.00g 0 /dev/md3 virtual lvm2 a-- 93.07g 18.07g darkside:~ # vgs VG #PV #LV #SN Attr VSize VFree sys 1 4 0 wz--n- 80.00g 0 virtual 1 9 1 wz--n- 93.07g 18.07g darkside:~ # lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert home sys -wi-ao--- 40.00g root sys -wi-ao--- 20.00g tmp sys -wi-ao--- 10.00g var sys -wi-ao--- 10.00g centos5 virtual -wi-a---- 10.00g centos6 virtual owi-a-s-- 10.00g centos6-snap virtual swi-a-s-- 10.00g centos6 11.30 debian-6 virtual -wi-a---- 10.00g freebsd9 virtual -wi-a---- 10.00g scientific6 virtual -wi-a---- 10.00g zfs1 virtual -wi-a---- 5.00g zfs2 virtual -wi-a---- 5.00g zfs3 virtual -wi-a---- 5.00g darkside:~ # lvdisplay -c /dev/virtual/centos6:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:5 /dev/virtual/centos6-snap:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:7 /dev/virtual/debian-6:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:8 /dev/virtual/scientific6:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:9 /dev/virtual/zfs1:virtual:3:1:-1:0:10485760:1280:-1:0:-1:253:10 /dev/virtual/zfs2:virtual:3:1:-1:0:10485760:1280:-1:0:-1:253:11 /dev/virtual/zfs3:virtual:3:1:-1:0:10485760:1280:-1:0:-1:253:12 /dev/virtual/freebsd9:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:13 /dev/virtual/centos5:virtual:3:1:-1:0:20971520:2560:-1:0:-1:253:14 /dev/sys/home:sys:3:1:-1:1:83877888:10239:-1:0:-1:253:0 /dev/sys/root:sys:3:1:-1:1:41943040:5120:-1:0:-1:253:1 /dev/sys/tmp:sys:3:1:-1:1:20971520:2560:-1:0:-1:253:2 /dev/sys/var:sys:3:1:-1:1:20971520:2560:-1:0:-1:253:3 darkside:~ # darkside:~ # cat /etc/mdadm.conf DEVICE containers partitions ARRAY /dev/md/0 UUID=b7155105:16de1826:2f21e0a9:e303082c ARRAY /dev/md/1 UUID=fee74ee8:6d2c68d9:8cbaec5a:01978ab6 ARRAY /dev/md/2 UUID=d309bc4b:e43890f1:b60bc8d9:d4c76f77 ARRAY /dev/md/3 UUID=8d2857fb:7c3ead15:caa04a0d:1e290036 darkside:~ # ll /dev/md* brw-rw---- 1 root disk 9, 0 Jun 25 17:35 /dev/md0 brw-rw---- 1 root disk 9, 1 Jun 25 17:35 /dev/md1 brw-rw---- 1 root disk 9, 2 Jun 25 17:35 /dev/md2 brw-rw---- 1 root disk 9, 3 Jun 25 17:35 /dev/md3 /dev/md: total 0 lrwxrwxrwx 1 root root 6 Jun 25 17:35 0 -> ../md0 lrwxrwxrwx 1 root root 6 Jun 25 17:35 1 -> ../md1 lrwxrwxrwx 1 root root 6 Jun 25 17:35 2 -> ../md2 lrwxrwxrwx 1 root root 6 Jun 25 17:35 3 -> ../md3 darkside:~ # But the mdadm.conf generated for the initrd looks like shown below: AUTO -all ARRAY /dev/md/3 metadata=1.2 name=darkside.localnet:3 UUID=8d2857fb:7c3ead15:caa04a0d:1e290036 ARRAY /dev/md/1 metadata=1.0 name=linux:1 UUID=fee74ee8:6d2c68d9:8cbaec5a:01978ab6 Reproducible: Always Steps to Reproduce: 1. Create several MD devices (RAID configuration shouldn't matter in this case) during initial installation, e.g. md0 - /boot md1 - swap md2 - LVM2 2. Create a LVM volume group and several logical volumes on top of the md2 devices (root file system is on one of the LVs), e.g. /dev/sys/home /dev/sys/root /dev/sys/tmp /dev/sys/var 3. Create another MD device (md3) after installation, add it to another LVM volume group, and create several logical volumes on it so that there will be more than 10 logical volumes in total (both volume groups combined). 4. Run mkinitrd 5. Boot the system using the generated initrd image. Actual Results: The system boot fails when the kernel tries mount root file system, because the MD device containing the root file system hasn't been activated. Expected Results: The correct MD device containing root file system is activated during boot. Modifying the /usr/lib/mkinitrd/scripts/setup-lvm2.sh where volume group name is resolved by making sed match from the end of the line, like shown below vg_name=$(lvdisplay -c 2> /dev/null | sed -n "/.*:$blockmajor:$blockminor$/p") seems to fix the problem. Actually, the match anything part at the beginning then becomes redundant and could be removed altogether. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c
FeiXiang Zhang
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c1
Olaf Hering
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c2
Martti Laaksonen
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c3
--- Comment #3 from Olaf Hering
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c4
--- Comment #4 from Bernhard Wiedemann
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c5
Olaf Hering
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c6
--- Comment #6 from dong mao zhang
Dong Mao Zhang,
please check what distributions need updates for lvm2.rpm
SLES has fixed this problem. see bnc#617853 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c7
Olaf Hering
https://bugzilla.novell.com/show_bug.cgi?id=826727
https://bugzilla.novell.com/show_bug.cgi?id=826727#c8
--- Comment #8 from Dieter Wörz
participants (1)
-
bugzilla_noreply@novell.com