diff options
author | 2009-07-24 21:57:25 +0000 | |
---|---|---|
committer | 2009-07-24 21:57:25 +0000 | |
commit | 8d6b54e2cf8e389547dd19d8f54f9ac7d3cb4b0a (patch) | |
tree | 0c32b831df6d6baa516044bc68c771ab5aa5da21 | |
parent | Set the active pane when respawning a window - fixes problems when respawning a (diff) | |
download | wireguard-openbsd-8d6b54e2cf8e389547dd19d8f54f9ac7d3cb4b0a.tar.xz wireguard-openbsd-8d6b54e2cf8e389547dd19d8f54f9ac7d3cb4b0a.zip |
in pmap_kenter_pa(), flush the old pte before installing the new one.
ok kettenis
-rw-r--r-- | sys/arch/hppa/hppa/pmap.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/arch/hppa/hppa/pmap.c b/sys/arch/hppa/hppa/pmap.c index 34e5652adae..71fb2fc9446 100644 --- a/sys/arch/hppa/hppa/pmap.c +++ b/sys/arch/hppa/hppa/pmap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pmap.c,v 1.137 2009/06/16 00:11:29 oga Exp $ */ +/* $OpenBSD: pmap.c,v 1.138 2009/07/24 21:57:25 deraadt Exp $ */ /* * Copyright (c) 1998-2004 Michael Shalayeff @@ -1232,11 +1232,11 @@ pmap_kenter_pa(va, pa, prot) pmap_prot(pmap_kernel(), prot)); if (pa >= HPPA_IOBEGIN) pte |= PTE_PROT(TLB_UNCACHABLE); + if (opte) + pmap_pte_flush(pmap_kernel(), va, opte); pmap_pte_set(pde, va, pte); pmap_kernel()->pm_stats.wired_count++; pmap_kernel()->pm_stats.resident_count++; - if (opte) - pmap_pte_flush(pmap_kernel(), va, opte); #ifdef PMAPDEBUG { |