diff options
author | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-02-20 16:23:29 +0000 |
---|---|---|
committer | nwhitehorn <nwhitehorn@FreeBSD.org> | 2010-02-20 16:23:29 +0000 |
commit | 4eb3d8da4ba4bc61625838d1ae482a16d4e66fcd (patch) | |
tree | 3fe883ace3f8a1c795651d5164863b46acab7f62 /sys/powerpc/aim/machdep.c | |
parent | 3ae7ac7719f3d3e8d1ff85f599684c37e12bf59a (diff) | |
download | FreeBSD-src-4eb3d8da4ba4bc61625838d1ae482a16d4e66fcd.zip FreeBSD-src-4eb3d8da4ba4bc61625838d1ae482a16d4e66fcd.tar.gz |
Reduce KVA pressure on OEA64 systems running in bridge mode by mapping
UMA segments at their physical addresses instead of into KVA. This emulates
the direct mapping behavior of OEA32 in an ad-hoc way. To make this work
properly required sharing the entire kernel PMAP with Open Firmware, so
ofw_pmap is transformed into a stub on 64-bit CPUs.
Also implement some more tweaks to get more mileage out of our limited
amount of KVA, principally by extending KVA into segment 16 until the
beginning of the first OFW mapping.
Reported by: linimon
Diffstat (limited to 'sys/powerpc/aim/machdep.c')
-rw-r--r-- | sys/powerpc/aim/machdep.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/powerpc/aim/machdep.c b/sys/powerpc/aim/machdep.c index b2e57b8..a9cf051 100644 --- a/sys/powerpc/aim/machdep.c +++ b/sys/powerpc/aim/machdep.c @@ -198,6 +198,11 @@ cpu_startup(void *dummy) ptoa(physmem) / 1048576); realmem = physmem; + if (bootverbose) + printf("available KVA = %zd (%zd MB)\n", + virtual_end - virtual_avail, + (virtual_end - virtual_avail) / 1048576); + /* * Display any holes after the first chunk of extended memory. */ |