Red Hat Bugzilla – Bug 487358
rawhide upgrade of F10 fails to boot with "mount: could not find filesystem '/dev/root'"
Last modified: 2009-03-16 14:48:03 EDT
Created attachment 333172 [details]
serial console log of boot failure on Lenovo desktop
Description of problem:
A system updated from a basic F10 install to rawhide fails to boot.
Did a clean install of F10 from DVD to a Lenovo 3000 J Series desktop box (64-bit kernel). Used all anaconda defaults and system booted fine after the install. Enabled rawhide repository and did a yum update to rawhide. Following successful update of 900-some packages, rebooted and the boot failed with:
mount: could not find filesystem '/dev/root'
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Install F10
2. Update to rawhide
3. reboot the system
Boot fails for rawhide kernel; succeeds for F10 kernel
I'll attach a serial console log of the failed boot. This was with a slightly hacked 'init' script from the initrd (commented out setquiet and plymouth references).
I'll attach the 'init' script as well as the grub.conf from the failing system.
Created attachment 333173 [details]
modified 'init' from failing initrd
This is the init script from the failing initrd; I've commented out the 'setquiet' and all references to plymouth, otherwise no modifications
Created attachment 333174 [details]
grub.conf from failing system
This is the grub.conf from the failing system; only modification was to change the timeout parameter from 0 to 10.
Ok, I think I know whats going on, I'm pretty sure actually. The new mkinitrd depends on some sysfs layout changes only present in the rawhide kernel, so when you do a yum update from F-10, it won't work as then its running 2.6.27.x .
As a workaround (and to prove my theory) can you please boot the working F-10 kernel and then edit /sbin/mkinitrd and changing line 326 from:
if [ -f "$sysfs/partition" ]; then
if [ -f "$sysfs/start" ]; then
And then regenerate your initrd using:
mkinitrd -f /boot/initrd-2.6.29-0.145.rc6.fc11.x86_64.img \
And then reboot into the new kernel? If that works I'll make this change to mkinitrd in rawhide,
That did it for the desktop box! Thanks!
Unfortunately the same edit on my laptop doesn't work. I think that's because I'm running a 184.108.40.206 based kernel there (only one that still works). When rebuilding an initrd on my laptop, I get the message:
WARNING: /sys/block/dm-0 is a not a block sysfs path, skipping
WARNING: /sys/block/dm-1 is a not a block sysfs path, skipping
and the booted kernel fails with the same 'mount: could not...' error. I noticed that the /sys layout on my bootable kernel (220.127.116.11-rt16) doesn't have /sys/devices/virtual, which is there on 2.6.29 kernels.
Any ideas for a hack to get my laptop booting fedora kernels again? Wonder if I could boot from an F11 DVD and run mkinitrd there?
Created attachment 334475 [details]
PATCH fixing booting with older kernels
Sorry for the long silence, I got hit by a wall of (other) work.
Can you give this patch (can be applied directly to /sbin/mkinitrd) a try on the laptop please?
*** Bug 479602 has been marked as a duplicate of this bug. ***
unfortunately, I reinstalled my laptop (back to F10) so I'm not seeing this problem anymore. I'll probably take it back to rawhide in another week, so I'll keep an eye out for this issue.
My desktop box got into the situation where it was unable to find /dev/root when booting the current rawhide kernel (kernel-2.6.29-0.215.rc7.fc11.x86_64) and the kernel-rt-18.104.22.168-107.el5rt.x86_64 package, so I booted into an earlier kernel, and applied your patch from comment #5 to /sbin/mkinitrd and that seemed to fix the problem.
At least, I have a working initrd for rawhide. I'm continuing to test on the other installed kernels.
(In reply to comment #8)
> My desktop box got into the situation where it was unable to find /dev/root
> when booting the current rawhide kernel (kernel-2.6.29-0.215.rc7.fc11.x86_64)
> and the kernel-rt-22.214.171.124-107.el5rt.x86_64 package, so I booted into an
> earlier kernel, and applied your patch from comment #5 to /sbin/mkinitrd and
> that seemed to fix the problem.
> At least, I have a working initrd for rawhide. I'm continuing to test on the
> other installed kernels.
Thanks for testing this!
This is fixed in mkinitrd-6.0.81, which should be in tomorrows rawhide.