summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/booke
diff options
context:
space:
mode:
authorjhibbits <jhibbits@FreeBSD.org>2016-02-16 02:13:55 +0000
committerjhibbits <jhibbits@FreeBSD.org>2016-02-16 02:13:55 +0000
commit60370dfaf5f91c13b3d3acbda0dc9da058779d0e (patch)
treef7be3f9a1e080032bb21ce39a9de723598cd83c7 /sys/powerpc/booke
parent6943e659c079f7524b7ada835d0dda9991ca4ae1 (diff)
downloadFreeBSD-src-60370dfaf5f91c13b3d3acbda0dc9da058779d0e.zip
FreeBSD-src-60370dfaf5f91c13b3d3acbda0dc9da058779d0e.tar.gz
Fix a panic bug that cropped up in the PTE rewrite.
PTE was getting overwritten by just the flags. Pointy-hat to: jhibbits
Diffstat (limited to 'sys/powerpc/booke')
-rw-r--r--sys/powerpc/booke/pmap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/powerpc/booke/pmap.c b/sys/powerpc/booke/pmap.c
index 86da60a..0b45c87 100644
--- a/sys/powerpc/booke/pmap.c
+++ b/sys/powerpc/booke/pmap.c
@@ -1759,7 +1759,8 @@ mmu_booke_enter_locked(mmu_t mmu, pmap_t pmap, vm_offset_t va, vm_page_t m,
tlb_miss_lock();
tlb0_flush_entry(va);
- *pte = flags;
+ *pte &= ~PTE_FLAGS_MASK;
+ *pte |= flags;
tlb_miss_unlock();
mtx_unlock_spin(&tlbivax_mutex);
OpenPOWER on IntegriCloud