Bug 827579 - grub2 fails when prep and /boot are on different disks
Summary: grub2 fails when prep and /boot are on different disks
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: grub2
Version: 17
Hardware: ppc64
OS: All
unspecified
high
Target Milestone: ---
Assignee: Peter Jones
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-06-01 19:21 UTC by IBM Bug Proxy
Modified: 2013-01-20 16:33 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-01-20 16:33:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
IBM Linux Technology Center 82154 0 None None None 2019-01-24 16:03:37 UTC

Description IBM Bug Proxy 2012-06-01 19:21:05 UTC
== Comment: #0 - Brent J. Baude <baude.com> - 2012-06-01 15:04:31 ==
Grub2 is unable to read its menu file (grub.cfg) or kernel and initrds when the prep partition (where grub lives) and /boot are on different disk.

Consider the following scenario.  A system with two disks.  You install prep on disk 1 and on disk 2 you put /boot and /.

/dev/sda1  == prep 
/dev/sdb1 /boot
/dev/sdb2 /

It will not be able to read the grub.cfg in /dev/sdb1 and drops to grub2 rescue prompt.

You can also trip into this scenario where multiple installations are present.  Consider the following:

You install a Linux distro on a disk.  (sda) and end up with 
/dev/sda1 prep (with yaboot or grub2)
/dev/sda2 /boot
/dev/sda3 large lvm for / and swap

Then install Fedora (with grub) on a second disk:

/dev/sdb1 prep
/dev/sdb2 /boot
/dev/sdb3 large lvm for / and swap

In this case, when you point SMS to boot from sdb, it will load the grub menu succesfully and present grub menus for Fedora and the other OS.  The Fedora OS will boot fine.  The other OS, though has a proper configuration within grub2, will not boot because grub2 cannot cross the disk boundary to load the kernel and initrd.

Here are some possible things we can consider:

1. remove 30_os_prober from ppc64 grub2, which only resolve the second scenario described.
2. set an OF alias so grub can traverse disks, though these have the downside of being deleted under certain circumstances.
3. alter grub to deal with OF device names?

Others?

Comment 1 Vladimir Serbinenko 2012-06-01 19:50:33 UTC
Well it's funny to see this right after IBM has pushed to disable OFW tree traversing on IBM systems because it returns incomplete names (missing @X part) and attempting to open them causes IBM firmware to segfault. Supporting configurations like this needs either:
- A way to enumerate all drives on a computer. Do you have a spec on how to add those missing @X on IBM?
- A way to get OFW device name reliably from OS.
It preference we need both.

Comment 2 Cody P. Schafer 2012-07-13 16:43:48 UTC
Vladimir: could you elaborate on the issues with IBM Fw or link to the relevent discussion? Thanks.

Comment 3 Mads Kiilerich 2012-07-31 20:20:41 UTC
FWIW and without knowing anything about PPC: I have seen similar symptoms on EFI, caused by Fedora's grub-2.00-add-fw_path-search.patch hack.

Comment 4 IBM Bug Proxy 2012-12-04 20:32:02 UTC
------- Comment From clnperez.com 2012-12-04 20:10 EDT-------
Thanks all. Closing as per previous comments. We'll open a Fedora 18 bug if we find a regression there.


Note You need to log in before you can comment on or make changes to this bug.