summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorjake <jake@FreeBSD.org>2002-07-27 21:57:38 +0000
committerjake <jake@FreeBSD.org>2002-07-27 21:57:38 +0000
commitd1139f54e73daf43c9c802ca80dd8005fac399c0 (patch)
treea1d485366fadf541765d8909727f3dadb0291830 /share
parent4aba2e0f628f5731cd71b8cdd112228beb658f58 (diff)
downloadFreeBSD-src-d1139f54e73daf43c9c802ca80dd8005fac399c0.zip
FreeBSD-src-d1139f54e73daf43c9c802ca80dd8005fac399c0.tar.gz
Implement a direct mapped address region, like alpha and ia64. This
basically maps all of physical memory 1:1 to a range of virtual addresses outside of normal kva. The advantage of doing this instead of accessing phsyical addresses directly is that memory accesses will go through the data cache, and will participate in the normal cache coherency algorithm for invalidating lines in our own and in other cpus' data caches. So we don't have to flush the cache manually or send IPIs to do so on other cpus. Also, since the mappings never change, we don't have to flush them from the tlb manually. This makes pmap_copy_page and pmap_zero_page MP safe, allowing the idle zero proc to run outside of giant. Inspired by: ia64
Diffstat (limited to 'share')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud