Page MenuHomeFreeBSD

Add support to allocate more space before and after a current allocation
ClosedPublic

Authored by andrew on Nov 27 2019, 3:01 PM.
Tags
None
Referenced Files
F108304845: D22569.diff
Thu, Jan 23, 5:33 PM
Unknown Object (File)
Thu, Jan 16, 10:47 PM
Unknown Object (File)
Oct 31 2024, 6:56 PM
Unknown Object (File)
Oct 5 2024, 4:14 AM
Unknown Object (File)
Oct 2 2024, 3:21 AM
Unknown Object (File)
Sep 8 2024, 8:57 PM
Unknown Object (File)
Sep 8 2024, 2:41 AM
Unknown Object (File)
Sep 5 2024, 6:18 AM
Subscribers
None

Details

Summary

With a very large kernel or module the staging area may be too small to
hold it. When this is the case try to allocate more space before failing
in the efi copyin/copyout/readin functions.

Test Plan

Loaded a 69M kernel with a 32M staging area on arm64.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 27800
Build 25985: arc lint + arc unit

Event Timeline

Not seeing any holes here

This revision is now accepted and ready to land.Nov 27 2019, 3:54 PM

Seems ok.
Note, the issue about the staging size is not really if we can or can not allocate specific size, but if we have enough target space to copy it. I have starting to port other change (https://reviews.freebsd.org/D22309), the idea there is that we should determine if the target location has enough space. The bios version is simple as there we own the memory and we can not load directly to target address, in UEFI case we need to allocate, load and after switching off the BS, only then we can copy.