summaryrefslogtreecommitdiffstats
path: root/lib/libc
diff options
context:
space:
mode:
authorpatrick <patrick@openbsd.org>2019-05-28 20:32:30 +0000
committerpatrick <patrick@openbsd.org>2019-05-28 20:32:30 +0000
commit2c9b4641a9ac53eb889f10c605fc1e95232ffcd1 (patch)
treed7cfd6e917ce20fc042b7eb97a33b4a96a0d2ba2 /lib/libc
parentmake PERMIT_CDROM info optional (diff)
downloadwireguard-openbsd-2c9b4641a9ac53eb889f10c605fc1e95232ffcd1.tar.xz
wireguard-openbsd-2c9b4641a9ac53eb889f10c605fc1e95232ffcd1.zip
On bigger arm64 machines with plenty of memory it is possible that
the kernel, which is allocated in low memory by efiboot, is not in the same 512 GiB L0 address space as the EFI/FDT/ACPI tables. Since we only identity-map a single L0 entry for bootstrapping purposes we can't reach those tables. Keep a set of spare L1 tables, currently one, which we can dynamically enter into the identity map so that we are able to reach those tables. While there, do the FDT mapping a bit later in C code by calling pmap_map_early(). This allows us to boot further on Packet's Ampere eMAGs. Discussed with drahn@ ok kettenis@
Diffstat (limited to 'lib/libc')
0 files changed, 0 insertions, 0 deletions