On Tue, Apr 14, 2020 at 3:50 AM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote: > > [*] GRUB on x86 turns out not to zero initialize BSS when it invokes > the EFI stub as a PE/COFF executable The fix seems to be to put all globals in the .data section, even if they don't have initializers. That seems very fragile. Very easy to forget to not declare some static variable with __efistub_global. Could we not make the EFI stub code zero out the BSS itself? Perhaps setting a warning flag (for a later printout) if it wasn't already zero, so that people could point fingers are buggy loaders.. Linus