[Bug 264021] efi: failed to allocate staging area: 9

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 20 May 2022 20:07:40 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264021

Andrew Turner <Andrew@FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |Andrew@FreeBSD.org

--- Comment #7 from Andrew Turner <Andrew@FreeBSD.org> ---
It looks like the issue is the loop in bi_load_efi_data in bootinfo.c is too
smart for clang, so it gets confused and thinks efihdr and mm doesn't get
initialised. This causes it to remove all the code after the getenv meaning we
return from this getenv call to efi_copy_init.

efi_copy_init then enters an infinite loop allocating all memory until it runs
out & complains, however is still in the loop so continues to try and fail to
allocate more memory.

I have a local fix I'll push for review soon, but a work around for now seems
to be making sure efihdr and mm are initilised to NULL before the comment
starting "Matthew Garrett has observed ..."

-- 
You are receiving this mail because:
You are the assignee for the bug.