Bug#423648: grub-pc: md/lvm path check in getroot.c breaks booting

Robert Millan rmh at aybabtu.com
Sun May 13 19:07:11 UTC 2007


On Sun, May 13, 2007 at 06:24:19PM +0100, Sam Morris wrote:
> Package: grub-pc
> Version: 1.95+20070507-1
> Severity: normal
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> While debugging #423022 I found the following:
> 
> > I had to do one more thing to boot up correctly: edit the command line.
> > It had 'root=md0' but it needed 'root=/dev/md0'. It appears that
> > 'grub-probe -t device /boot/grub' outputs 'md0' when it should be
> > outputting '/dev/md0' (just as it outputs e.g., '/dev/hde1' instead of
> > 'hde1' for 'grub-probe -t device /mnt'). Shall I file a separate bug for
> > that?
> 
> This is caused by the code within the #ifdef __linux__ in
> 'util/i386/pc/getroot.c'. I can't see what the point of this code
> is--the kernel will always want 'root=/dev/md0' or
> 'root=/dev/mapper/foo-bar' and not the truncated form.

grub_guess_root_device() wasn't initialy designed to serve this purpose; the
"-t device" use was added later.

Can you try arranging this code to include the missing "/dev/" and report if
everything still works?

-- 
Robert Millan

My spam trap is honeypot at aybabtu.com.  Note: this address is only intended
for spam harvesters.  Writing to it will get you added to my black list.




More information about the Pkg-grub-devel mailing list