On Sun, 19 Apr 2020 at 14:55, Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > > Hi, > > On 4/19/20 1:59 PM, Ard Biesheuvel wrote: > > On Sun, 19 Apr 2020 at 13:41, Hans de Goede <hdegoede@xxxxxxxxxx> wrote: > >> > >> Hi Ard, > >> > >> I got a bug report by email that "grub-install" was throwing errors > >> on 32 bit UEFI (64 bit kernel, mixed mode) systems starting with 5.6 . > >> After that I noticed that the Fedora installer also threw an error about > >> it being unable to setup the bootloader (which I could luckily skip), this > >> was also a 32 bit UEFI mixed-mode system. > >> > >> So I've been running some tests with efibootmgr from the shell. Adding > >> new entries works, but removing an entry involves unlinking the EFI var > >> for the old which fails, here is the relevant part from a strace run: > >> > >> unlink("/sys/firmware/efi/efivars/Boot0000-8be4df61-93ca-11d2-aa0d-00e098032b8c") = -1 EINVAL (Invalid argument) > >> > >> With kernel 5.5 the same unlink succeeds, I guess this is also the > >> cause for the grub-install and Fedora 32 installer errors. At least > >> the Fedora 32 install error was seen on a system which already had > >> a "Fedora" efibootmgr entry, so likely the installer tried to remove > >> the old entry first and that caused the failure. > >> > >> I've also tried removing efibootmgr entires on a 64 bit UEFI system running > >> 5.6.4 and that works fine. On 32 bit UEFI mixed-mode systems the problem > >> persists with 5.7-rc1. > >> > >> Ard, any idea where to start with pinpointing the cause of this > >> regression ? > >> > > > > Can you start by trying this patch please? > > > > https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git/commit/?h=urgent&id=9461aa3b44ac21668100067939d24a6ffa810eae > > Cool, I can confirm that this fixes deleting boot entries with > efibootmgr. > Thanks for confirming, and apologies for the breakage. > Regards, > > Hans > > > p.s. > > In Torvald's tree this seems to have gotten a different commit-id: > a4b81ccfd4caba017d2b84720b6de4edd16911a0 > Yes, as you know, Ingo prefers to re-apply EFI patches piecemeal rather than merging my branches directly, so the branches in the EFI tree are not stable, unfortunately.