aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorJake Burkholder <jake@FreeBSD.org>2002-12-20 21:47:21 +0000
committerJake Burkholder <jake@FreeBSD.org>2002-12-20 21:47:21 +0000
commit9830739b6420857575b67d6f7188cb9a2eb95247 (patch)
tree8498c1ff0faacc11dc3dc0f8636f3e4828ed9030 /sys
parent2952e1fb58aa245bee3cc3bedf69dd7861175fed (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/sparc64/sparc64/pmap.c2
-rw-r--r--sys/sparc64/sparc64/tsb.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/sparc64/sparc64/pmap.c b/sys/sparc64/sparc64/pmap.c
index a05c787574c1..c441806d8a5c 100644
--- a/sys/sparc64/sparc64/pmap.c
+++ b/sys/sparc64/sparc64/pmap.c
@@ -1502,7 +1502,9 @@ pmap_enter(pmap_t pm, vm_offset_t va, vm_page_t m, vm_prot_t prot,
if (tp != NULL) {
CTR0(KTR_PMAP, "pmap_enter: replace");
PMAP_STATS_INC(pmap_enter_nreplace);
+ vm_page_lock_queues();
pmap_remove_tte(pm, NULL, tp, va);
+ vm_page_unlock_queues();
tlb_page_demap(pm, va);
} else {
CTR0(KTR_PMAP, "pmap_enter: new");
diff --git a/sys/sparc64/sparc64/tsb.c b/sys/sparc64/sparc64/tsb.c
index 68ba11d44a1b..a2293cd6cbc7 100644
--- a/sys/sparc64/sparc64/tsb.c
+++ b/sys/sparc64/sparc64/tsb.c
@@ -167,7 +167,9 @@ tsb_tte_enter(pmap_t pm, vm_page_t m, vm_offset_t va, u_long sz, u_long data)
if ((tp->tte_data & TD_V) != 0) {
TSB_STATS_INC(tsb_nrepl);
ova = TTE_GET_VA(tp);
+ vm_page_lock_queues();
pmap_remove_tte(pm, NULL, tp, ova);
+ vm_page_unlock_queues();
tlb_page_demap(pm, ova);
}