Bug 490972
| Summary: | Failed to start array (RAID0) with root fs | |||
|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Doug Ledford <dledford> | |
| Component: | mdadm | Assignee: | Doug Ledford <dledford> | |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
| Severity: | urgent | Docs Contact: | ||
| Priority: | high | |||
| Version: | 11 | CC: | bruno, dledford, jarmstrong, jarod, nicolas.mailhot, notting | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | x86_64 | |||
| OS: | Linux | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | Bug Fix | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | 488038 | |||
| : | 491155 491356 (view as bug list) | Environment: | ||
| Last Closed: | 2009-06-29 19:27:20 UTC | Type: | --- | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | 488038 | |||
| Bug Blocks: | 491155, 491356 | |||
|
Description
Doug Ledford
2009-03-18 17:57:58 UTC
mdadm-3.0-0.devel3.1.fc11 has been built to address this issue. Note it still needs the initscript update to be expected to work. So with the initscript update hand-made and mdadm updated to 3.0-0.devel3.1.fc11, I'm still only getting one of four disks added to md0 (my /boot array).
# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : inactive sdc1[2](S)
200704 blocks
md1 : active raid6 sda3[0] sdd3[3] sdc3[2] sdb3[1]
307981824 blocks level 6, 256k chunk, algorithm 2 [4/4] [UUUU]
unused devices: <none>
#cat /etc/mdadm.conf
# mdadm.conf written out by anaconda
DEVICE partitions
MAILADDR root
ARRAY /dev/md1 level=raid6 num-devices=4 metadata=0.90 UUID=368714fb:5469cef4:f60fd542:027945d8
ARRAY /dev/md0 level=raid1 num-devices=4 metadata=0.90 UUID=04aacae3:99941fc2:d486ae8d:01f4d665
# mdadm -Eb /dev/sdc1:
ARRAY /dev/md0 level=raid1 num-devices=4 UUID=04aacae3:99941fc2:d486ae8d:01f4d665
# mdadm -Eb /dev/sda1
ARRAY /dev/md0 level=raid1 num-devices=4 UUID=04aacae3:99941fc2:d486ae8d:01f4d665
# ll /*/udev/rules.d/ /etc/udev/rules.d/: total 80 -rw-r--r--. 1 root root 397 2009-03-06 08:09 40-multipath.rules -rw-r--r--. 1 root root 19994 2009-02-25 11:32 60-libmtp.rules -rw-r--r--. 1 root root 1060 2009-03-06 03:33 60-pcmcia.rules -rw-r--r--. 1 root root 6824 2009-03-09 00:13 60-wacom.rules -rw-r--r--. 1 root root 595 2009-03-06 17:13 70-persistent-cd.rules -rw-r--r--. 1 root root 845 2009-03-06 17:11 70-persistent-net.rules -rw-r--r--. 1 root root 1914 2009-03-03 17:55 85-pcscd_ccid.rules -rw-r--r--. 1 root root 244 2009-02-25 01:54 85-pcscd_egate.rules -rw-r--r--. 1 root root 320 2008-09-18 03:54 90-alsa.rules -rw-r--r--. 1 root root 83 2009-03-05 20:26 90-hal.rules -rw-r--r--. 1 root root 53 2009-02-24 11:41 91-drm-modeset.rules -rw-r--r--. 1 root root 4216 2009-03-10 14:56 95-devkit-disks.rules -rw-r--r--. 1 root root 2283 2009-03-09 15:37 97-bluetooth-serial.rules -rw-r--r--. 1 root root 85 2009-03-02 16:42 98-devkit.rules /lib/udev/rules.d/: total 112 -rw-r--r--. 1 root root 421 2009-03-09 22:05 10-console.rules -rw-r--r--. 1 root root 348 2009-03-03 08:17 40-alsa.rules -rw-r--r--. 1 root root 1431 2009-03-03 08:17 40-redhat.rules -rw-r--r--. 1 root root 172 2009-03-03 08:17 50-firmware.rules -rw-r--r--. 1 root root 4562 2009-03-03 08:17 50-udev-default.rules -rw-r--r--. 1 root root 141 2009-03-03 08:17 60-cdrom_id.rules -rw-r--r--. 1 root root 283 2009-03-09 22:05 60-net.rules -rw-r--r--. 1 root root 1538 2009-03-03 08:17 60-persistent-input.rules -rw-r--r--. 1 root root 718 2009-03-03 08:17 60-persistent-serial.rules -rw-r--r--. 1 root root 4441 2009-03-03 08:17 60-persistent-storage.rules -rw-r--r--. 1 root root 1514 2009-03-03 08:17 60-persistent-storage-tape.rules -rw-r--r--. 1 root root 711 2009-03-03 08:17 60-persistent-v4l.rules -rw-r--r--. 1 root root 3914 2009-03-02 10:33 61-option-modem-modeswitch.rules -rw-r--r--. 1 root root 525 2009-03-03 08:17 61-persistent-storage-edd.rules -rw-r--r--. 1 root root 107 2009-03-03 08:17 64-device-mapper.rules -rw-r--r--. 1 root root 1701 2009-03-18 14:29 64-md-raid.rules -rw-r--r--. 1 root root 1218 2009-03-02 10:33 70-acl.rules -rw-r--r--. 1 root root 390 2009-03-03 08:17 75-cd-aliases-generator.rules -rw-r--r--. 1 root root 2403 2009-03-03 08:17 75-persistent-net-generator.rules -rw-r--r--. 1 root root 336 2009-03-09 23:40 77-nm-probe-modem-capabilities.rules -rw-r--r--. 1 root root 2283 2009-03-02 10:33 78-sound-card.rules -rw-r--r--. 1 root root 137 2009-03-03 08:17 79-fstab_import.rules -rw-r--r--. 1 root root 779 2009-03-03 08:17 80-drivers.rules -rw-r--r--. 1 root root 221 2009-02-24 04:44 85-regulatory.rules -rw-r--r--. 1 root root 175 2009-03-09 22:05 88-clock.rules -rw-r--r--. 1 root root 234 2009-03-03 08:17 95-udev-late.rules A new version of mdadm that solves the file conflict is in rawhide. Got the even newer mdadm and the original 64-md-raid.rules file back in place, and restarted... Now the machine is hanging at 'Starting udev: _' for a good couple of minutes before finally continuing boot. I was hoping all that delay might have meant the array got built correctly, but alas, /dev/md0 is still getting created with only a single drive in it. ...the heck? Second try, similar issue, but I noticed a ton of spew printed to the console after the lengthy hang starting udev: /sys/devices/virtual/block/md0 (2417) /sys/devices/virtual/block/md1 (2415) /sys/devices/virtual/block/md0 (2413) /sys/devices/virtual/block/md1 (2411) /sys/devices/virtual/block/md0 (2409) /sys/devices/virtual/block/md0 (2407) /sys/devices/virtual/block/md1 (2405) /sys/devices/virtual/block/md0 (2403) /sys/devices/virtual/block/md0 (2401) Made some progress on this. If I change rc.sysinit to have a udevadm trigger call before the udevadm settle call, all works. However, the call to start_udev a few lines above *also* has a udevadm trigger call in it, and that *should* be sufficient. So there is a question as to why calling udevadm trigger *again* only a few lines later works. I'm going to clone this bug against udev in rawhide to see if we can address that part of the issue. Problem has been isolated. There are two possible fixes, I'll implement the one that doesn't require init script changes for now. mdadm-3.0-0.devel3.5.fc11 has been built and solves the problem according to my testing. mdadm-3.0-0.devel3.5.fc11 was built a week ago. Was the delay in testing? The wording of the comment seems odd referencing a build from a week ago, so I wanted to double check before trying it out. No, the delay is that I was out of town for a week and I failed to update the bug before I left. The testing was done prior to the build. I tried it out and it worked better than when I had to remove the rules file (though its just gone now). I did see a message about an array already being in use after I had a couple of array elements failed out (due a kernel problem). But it didn't try to start another array like it had in the past, so things worked. Once I put stuff back into the arrays and rebooted, things looked normal during the boot process. This bug appears to have been reported against 'rawhide' during the Fedora 11 development cycle. Changing version to '11'. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping |