summaryrefslogtreecommitdiffstats
path: root/sys/powerpc
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>2004-08-04 22:03:16 +0000
committeralc <alc@FreeBSD.org>2004-08-04 22:03:16 +0000
commit41618225a8195e5dce8cd72ec583953369a9694f (patch)
tree41cf2763a53b6f40af5e8e1788926b3b2e74bf36 /sys/powerpc
parent0b32901632214fa88085bdbeb1c2e94bb3fa2d07 (diff)
downloadFreeBSD-src-41618225a8195e5dce8cd72ec583953369a9694f.zip
FreeBSD-src-41618225a8195e5dce8cd72ec583953369a9694f.tar.gz
- Push down the acquisition and release of Giant into pmap_enter_quick()
on those architectures without pmap locking. - Eliminate the acquisition and release of Giant in vm_map_pmap_enter().
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/aim/mmu_oea.c2
-rw-r--r--sys/powerpc/powerpc/mmu_oea.c2
-rw-r--r--sys/powerpc/powerpc/pmap.c2
3 files changed, 6 insertions, 0 deletions
diff --git a/sys/powerpc/aim/mmu_oea.c b/sys/powerpc/aim/mmu_oea.c
index 4db44cb..2225cf1 100644
--- a/sys/powerpc/aim/mmu_oea.c
+++ b/sys/powerpc/aim/mmu_oea.c
@@ -1031,7 +1031,9 @@ vm_page_t
pmap_enter_quick(pmap_t pm, vm_offset_t va, vm_page_t m, vm_page_t mpte)
{
+ mtx_lock(&Giant);
pmap_enter(pm, va, m, VM_PROT_READ | VM_PROT_EXECUTE, FALSE);
+ mtx_unlock(&Giant);
return (NULL);
}
diff --git a/sys/powerpc/powerpc/mmu_oea.c b/sys/powerpc/powerpc/mmu_oea.c
index 4db44cb..2225cf1 100644
--- a/sys/powerpc/powerpc/mmu_oea.c
+++ b/sys/powerpc/powerpc/mmu_oea.c
@@ -1031,7 +1031,9 @@ vm_page_t
pmap_enter_quick(pmap_t pm, vm_offset_t va, vm_page_t m, vm_page_t mpte)
{
+ mtx_lock(&Giant);
pmap_enter(pm, va, m, VM_PROT_READ | VM_PROT_EXECUTE, FALSE);
+ mtx_unlock(&Giant);
return (NULL);
}
diff --git a/sys/powerpc/powerpc/pmap.c b/sys/powerpc/powerpc/pmap.c
index 4db44cb..2225cf1 100644
--- a/sys/powerpc/powerpc/pmap.c
+++ b/sys/powerpc/powerpc/pmap.c
@@ -1031,7 +1031,9 @@ vm_page_t
pmap_enter_quick(pmap_t pm, vm_offset_t va, vm_page_t m, vm_page_t mpte)
{
+ mtx_lock(&Giant);
pmap_enter(pm, va, m, VM_PROT_READ | VM_PROT_EXECUTE, FALSE);
+ mtx_unlock(&Giant);
return (NULL);
}
OpenPOWER on IntegriCloud