summaryrefslogtreecommitdiff
path: root/sys/arch/amd64
diff options
context:
space:
mode:
authorKurt Miller <kurt@cvs.openbsd.org>2008-12-18 13:43:25 +0000
committerKurt Miller <kurt@cvs.openbsd.org>2008-12-18 13:43:25 +0000
commit650e0cdf12d66b23bc40a46efe127068129ab84a (patch)
tree8effdc7703dbf818d545de634d46ae1fbd04886d /sys/arch/amd64
parent84d7e7300b69ee29dc341f495bb9c8663140853b (diff)
use atomic operations to update ptes in pmap_unwire(). okay weingart@
Diffstat (limited to 'sys/arch/amd64')
-rw-r--r--sys/arch/amd64/amd64/pmap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/pmap.c b/sys/arch/amd64/amd64/pmap.c
index 6683435943a..19249b74f24 100644
--- a/sys/arch/amd64/amd64/pmap.c
+++ b/sys/arch/amd64/amd64/pmap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.c,v 1.33 2008/12/04 15:48:19 weingart Exp $ */
+/* $OpenBSD: pmap.c,v 1.34 2008/12/18 13:43:24 kurt Exp $ */
/* $NetBSD: pmap.c,v 1.3 2003/05/08 18:13:13 thorpej Exp $ */
/*
@@ -1938,7 +1938,7 @@ pmap_unwire(struct pmap *pmap, vaddr_t va)
panic("pmap_unwire: invalid (unmapped) va 0x%lx", va);
#endif
if ((ptes[pl1_i(va)] & PG_W) != 0) {
- ptes[pl1_i(va)] &= ~PG_W;
+ pmap_pte_clearbits(&ptes[pl1_i(va)], PG_W);
pmap->pm_stats.wired_count--;
}
#ifdef DIAGNOSTIC