Page MenuHomeFreeBSD

Increase default EFI staging area size from 32MB to 48MB.
ClosedPublic

Authored by jhb on Sep 14 2015, 9:55 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Apr 22, 9:23 AM
Unknown Object (File)
Feb 17 2024, 1:08 AM
Unknown Object (File)
Feb 17 2024, 12:47 AM
Unknown Object (File)
Feb 17 2024, 12:43 AM
Unknown Object (File)
Feb 16 2024, 9:42 PM
Unknown Object (File)
Jan 3 2024, 9:08 AM
Unknown Object (File)
Dec 20 2023, 12:10 AM
Unknown Object (File)
Nov 15 2023, 1:02 PM
Subscribers

Details

Summary

The EFI boot loader allocates a single chunk of contiguous memory to
hold the kernel, modules, and any other loaded data. This memory block
is relocated to the kernel's expected location during the transfer of
control from the loader to the kernel.

The GENERIC kernel on amd64 has recently grown such that a kernel + zfs.ko
no longer fits in the default staging size. Bump the default size from
32MB to 48MB to provide more breathing room.

PR: 201679

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

jhb retitled this revision from to Increase default EFI staging area size from 32MB to 48MB..
jhb updated this object.
jhb edited the test plan for this revision. (Show Details)
jhb added reviewers: emaste, andrew.

Andrew, I'm not sure if a default size of 48MB is ok for aarch64? For amd64 I suspect any machine with 64MB of RAM should be able to support this.

Also, this file has several hardcoded '4096' values. Should it be ok to use PAGE_SIZE directly instead (or is there an EFI constant that is the equivalent of PAGE_SIZE?)

Hmm, there is EFI_PAGE_SIZE and friends in efidef.h. It is currently hardcoded as 4096.

imp added a reviewer: imp.

This looks good, modulo the 4096 hard coding issue that was pre-existing..

This revision is now accepted and ready to land.Sep 14 2015, 10:01 PM
This revision was automatically updated to reflect the committed changes.