Some UEFI implementations place the system table in a runtime code
memory region. Include it in the DMAP so we can read it later.
Details
Details
- Reviewers
kevans manu - Group Reviewers
arm64 - Commits
- rG1d16a1306ae3: Include the EFI Runtime Code in the DMAP
rG57e47ae514b6: Include the EFI Runtime Code in the DMAP
Diff Detail
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
The way U-Boot does this feels a little sloppy, but nothing in the spec seems to forbid it and the alternative is probably way messier...
The relevant part being here: https://elixir.bootlin.com/u-boot/latest/source/lib/efi_loader/efi_memory.c#L836 -- they end up grouping efi runtime code/data together to minimize padding:
.efi_runtime : { __efi_runtime_start = .; *(.text.efi_runtime*) *(.rodata.efi_runtime*) *(.data.efi_runtime*) __efi_runtime_stop = .; }