summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/booke
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2012-07-02 21:21:12 +0000
committermarcel <marcel@FreeBSD.org>2012-07-02 21:21:12 +0000
commitd03048e85374bd7f304f38a595afbfcf907c4ccc (patch)
treeec85728c8e04804e452272c77e7bbd470d7652c0 /sys/powerpc/booke
parent50f2900b4c01dcd1864c314eb8a5746f0f8a7657 (diff)
downloadFreeBSD-src-d03048e85374bd7f304f38a595afbfcf907c4ccc.zip
FreeBSD-src-d03048e85374bd7f304f38a595afbfcf907c4ccc.tar.gz
Fix a typo that resulted in or-ing PTE_UW twice whrn PTE_SW was needed.
Note that setting the PTE_MODIFIED bit based on whether write is possible is incorrect. We should set PTE_MODIFIED based on whether the access is a write operation.
Diffstat (limited to 'sys/powerpc/booke')
-rw-r--r--sys/powerpc/booke/trap_subr.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/powerpc/booke/trap_subr.S b/sys/powerpc/booke/trap_subr.S
index c3b856a..33976ca 100644
--- a/sys/powerpc/booke/trap_subr.S
+++ b/sys/powerpc/booke/trap_subr.S
@@ -668,7 +668,7 @@ tlb_fill_entry:
lwarx %r21, %r23, %r25 /* get pte->flags */
oris %r21, %r21, PTE_REFERENCED@h /* set referenced bit */
- andi. %r22, %r21, (PTE_UW | PTE_UW)@l /* check if writable */
+ andi. %r22, %r21, (PTE_SW | PTE_UW)@l /* check if writable */
beq 2f
oris %r21, %r21, PTE_MODIFIED@h /* set modified bit */
2:
OpenPOWER on IntegriCloud