From Fedora Project Wiki

This is a list of GRUB issues, features and concerns the PowerPC team consider important to be addressed in Fedora 18.


No modules are loaded on network boot

Fedora: Patch committed
Upstream: Not needed (problem caused by a fedora patch)

Matthew's patch looks for the grub.cfg file in the bootlocation. In case the file is not found, it continues the normal path, which is to look for the grub.cfg using the prefix. The issue comes from the fact that the original patch does not clear the grub_errno in case the grub.cfg is not found in the bootlocation. This leads to a fake error later when grub tries to open the file "command.lst".

Fix: Matthew Garrett's grub-2.00-add-fw_path-search.patch patch was updated

Grub2 truncates device paths longer than 64 bytes

Fedora: Patch committed
Upstream: Patch sent to ML

Grub2 has a limit of 64 bytes for the device path. Some types of devices have path longer than 64 bytes. For example, we have a device with the following path: /io-hub@3efe00000000/pciex@3efe00080000/pci@0/pci@0/pci@6/pci1014,0339@0/sas/disk@0

Fix: Increase the buffer size

Netboot crashes when using HTTP

Fedora: Patch committed
Upstream: Patch submitted

If you use HTTP to download kernel/initrd, GRUB will crash due to access to invalid memory caused by trying to close an already closed connection.

Fix: Don't close the connection twice.

DNS is broken (can't resolve names)

Fedora: patch committed
Upstream: patch submitted

Grub sends 2 queries (ipv4 and ipv6) on a single DNS packet. Many DNS servers (including BIND) don't implement such feature due to protocol ambiguity on reporting partial results. Fix: Send separate DNS requests for ipv4 and ipv6.

Network boot on qemu is broken

Fedora: needs bugz
Upstream: needs investigation

Welcome to GRUB!
error: variable `root' isn't set.
Entering rescue mode...
grub rescue> net_ls_addr
grub rescue> net_bootp
error: couldn't autoconfigure ofnet_net.
grub rescue> net_ls_addr
grub rescue>

GRUB2 error: file '/boot/grub2/locale/' not found

Fedora: patch submitted
Upstream: discussed in

This small issue makes GRUB look fragile and it should be easy to fix.

Fix: Suppress the error message

Grub2 crashes when net_bootp command fails

Fedora: needs bugzilla
Upstream: needs patch

When the module ofnet is not loaded on ppc64, the command net_bootp does not print any error message and a subsequent net_ls_addr crashes.

GRUB2 fails to install if destination is a symlink

Fedora: patch committed
Upstream: Patch sent to ML

If the device used in grub2-install is a symlink, the file command must "follow the link" in order to check the real device. This prevents from installing grub2 on multipath devices.


GRUB must support IBM client architecture (CAS) reboot

Fedora: patch committed
Upstream: patch sent to ML

There are cases where the POWER firmware must reboot in order to support specific features requested by a kernel. The kernel calls ibm,client-architecture-support and it may either return or reboot with the new feature set. eg:

Calling ibm,client-architecture-support.../
Elapsed time since release of system processors: 70959 mins 50 secs
Welcome to GRUB!

Instead of return to the GRUB menu, it will check if the flag for CAS reboot is set. If so, grub will automatically boot the last booted kernel using the same parameters

VLAN Tag support for network boot/install

Fedora: patch committed
Upstream: patch sent to ML

VLAN tagging allows multiple VLANs in a bridged network to share the same physical network link but maintain isolation. This feature brings support for network installs and network boot support for these environments.

GRUB some modules should just be built-in on power

Fedora: patch committed
Upstream: patch sent to ML

grub2 has a very modular design, which is very useful to keep the bootloader fast and small. However, size is less of a concern for power. And not having certain features guaranteed to be present (due to issues with the bootloader configuration) is a real concern in the field. This applies to both the rescue and regular grub modes.

Add ability to autoload grub2's config file when netbooting

Fedora: patch committed
Upstream: needs patch

Similar to yaboot and pxelinux, grub2 network boot needs to auto load a config file. A few things that we need to fix:

1. net_bootp must default to the network we loaded grub2 off. RIght now it seems to default to the last network card. We need to use the info in boot-device to find the correct interface.

2. We need to load a machine specific config file over tftp. The algorithm used by both yaboot and pxelinux can be found at:


/boot and prep partition on different devices is problematic on grub2

We have seen many cases in which grub2 does not handle well when the prep and the /boot partitions are on separate disk. Some bugs were fixed on f17, but further testing is still required to make sure it works fine.

grub2 is not quite reliable when dealing with non-virtual devices, like sas, fc, iscsi.

Some issues were fixed on f17, but further testing is still required to make sure it works fine.

Attaching a new disk to the machine and adding a new entry to grub2 menu should be easy

Running grub2-mkconfig should be enough to be able to boot an OS in a newly attached disk whithout messing up with current grub2 config. Idea: grub2 might be able to discover newly attached disks on the fly, without grub2-mkconfig, by probing OFW. A new menu entry would be created automagically. Needs further discussion (check OFW support).

grub2 on qemu/kvm

We have seen grub2 having issues booting on a qemu/kvm environment. Some issues were fixed, but further testing is still required to make sure it works fine.