On Thu, Mar 11, 2021 at 11:36:26PM +0100, Mark Kettenis wrote: > The UEFI standard indicates that the EfiBootServicesCode and > EfiBootServicesData memory types are available for general use after > ExitBootServices() has been called. So unless the firmware is really > really buggy, this should be safe and give us a bit more memory. Not all too familar with it but I did came across this once while reading the spec so I looked it up; Version 2.8 Errata B lists exactly these three types as "Memory available for general use" *after* ExitBootServices().
> Tested this on three different UEFI implementations already. But a > bit more testing is always good. I have no arm64 to test but as you said, unless the specs are violated, this should just work. With that diff, the comment above the for loop is outdated. > The reason I want this is that I'm in a bit of a bind with Apple M1 > support. The U-Boot port I'm writing will mark a large chunk of > memory as EfiBootServicesData. This diff makes sure we can use that > chunk in OpenBSD. armv7 has the same bits, do you leave that untouched due to lack of testing or is there any other reason not to sync?
