Description of problem:
Activating a boot entry fails with the following error message:
error: ../../grub-core/kernel/dl.c:431:symbol 'grub_efi_allocate_pages' not found.
Version-Release number of selected component (if applicable):
GRUB 2.03 (it's the only version info I can gather from the GRUB prompt)
Steps to Reproduce:
Try to boot and choose any boot entry.
System is unusable after upgrade.
System is usable after upgrade.
On my HP Elitebook 8740w I get the same behavior !
The secure boot on this PC is Not available, because UEFI monitor implementation is too week, so the EFI boot process pass by the fallback prog.:
and On the grubmenu chooser, whatever Linux entry of my multiboot PC I choose, I get a grub error:
- - - - - - -
error ../../grub-core/kern/dl.c:431:symbol 'grub_efi_allocate_pages' not found.
press any key to continue
- - - - - -
Only the chain entry toward windows is working !
So IT IS a severe bug !
I did not reproduce this boot so simply !!
So now I need to pass first by navigation in EFI file system, and chose
to arrive on grub menu .
=====To get each time the grubmenu when you have an old buggy UEFI monitor, see explanation in bug :1512410
comment 59. No more fedora 26 efi component needed
Once arrived on grubmenu, and you get the problem signalled in this bug report by Daniel MIRANDA, the buggy part is:
the programm EFI/fedora/grubx64.efi itself
coming from package grub2-efi-x64-2.02-62.fc29.x86_64
SO Get the programm /boot/efi/EFI/fedora/grubx64.efi
from Fedora 28 package
grub2-efi-x64-2.02-38.fc28.x86_64.rpm, and just put it in place of EFI/fedora/grubx64.efi provided by Fedora29 standard repos.
Don't make a
# dnf downgrade grub2-efi-x64-2.02-38.fc28.x86_64.rpm
or the next time you'll made a global update the good programm will be erased by bad one, unless since then, grub2-efi-x64 for Fedora 29 has been corrected !!!!
TO DO IT:
(once grub2-efi-x64-2.02-38.fc28.x86_64.rpm,has been downloaded from any fedora 28 repos) :
# cd /root (or any other neutral place !)
# rpm2cpio grub2-efi-x64-2.02-38.fc28.x86_64.rpm \
# cpio -iumdv < grub2-efi-x64-2.02-38.fc28.x86_64.cpio
And then you have it in ./boot/efi/EFI/fedora/grubx64.efi
keep warm your bad prog !!!!:
# mv /boot/efi/EFI/fedora/grubx64.efi /boot/efi/EFI/fedora/grubx64.efi.f29
and put the good one viewable in /boot/efi/EFI/fedora/:
Always from the directory where you extracted the cpio (/root in this example):
# cp ./boot/efi/EFI/fedora/grubx64.efi /boot/efi/EFI/fedora/grubx64.efi.f28
# cd /boot/efi/EFI/fedora/
# cp grubx64.efi.f28 grubx64.efi
So that you will have always the good programm grubx64.efi.f28, quite in place if ever an update scratches grubx64.efi !
AND possibly if you had previously an endless booting loop, and you didn't care about secure EFI boot, because anyway, your UEFI monitor is unable to do so:
# cp grubx64.efi.f28 /boot/efi/EFI/BOOT/BOOTX64.EFI
I experience the same issue since I upgraded from F28 to F29.
I noticed that if a manually change the grub commands
linuxefi -> linux,
initrdefi -> initrd,
I am able to boot.
If I update manually grub.cfg with
grub2-mkconfig -o /etc/grub2-efi.cfg
where /etc/grub2-efi.cfg is a link to /boot/efi/EFI/fedora/grub.cfg, working grub entries with linux and initrd (without -efi suffix) are generated for all installed kernels. I can verify that looking into /boot/efi/EFI/fedora/grub.cfg.
If I reboot, everything works correctly.
However, when a new kernel is installed by the package manager, an entry with linuxefi and initrdefi is added to /boot/efi/EFI/fedora/grub.cfg, and that fails at the next boot, so there is still a bug.
This message is a reminder that Fedora 29 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '29'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.
Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 29 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
Fedora 29 changed to end-of-life (EOL) status on 2019-11-26. Fedora 29 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
Thank you for reporting this bug and we are sorry it could not be fixed.