diff options
author | alc <alc@FreeBSD.org> | 2010-06-01 19:56:02 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2010-06-01 19:56:02 +0000 |
commit | 4a513e9af44ef92bb9a00fddc64d22784bc9b95d (patch) | |
tree | 2066e74c719ba9a6569852b072f857519d624d59 /sys/powerpc | |
parent | 73a91f4cc74bf4ec4a6029ea69b15b8782506d1d (diff) | |
download | FreeBSD-src-4a513e9af44ef92bb9a00fddc64d22784bc9b95d.zip FreeBSD-src-4a513e9af44ef92bb9a00fddc64d22784bc9b95d.tar.gz |
In the case that mmu_booke_enter_locked() is changing the attributes of a
mapping but not changing the physical page being mapped, the wrong flags
were being inspected in order to determine whether or not to flush the
instruction cache. The effect of looking at the wrong flags was that the
instruction cache was never being flushed.
Reviewed by: marcel
Diffstat (limited to 'sys/powerpc')
-rw-r--r-- | sys/powerpc/booke/pmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/powerpc/booke/pmap.c b/sys/powerpc/booke/pmap.c index a895a7c..ca48adc 100644 --- a/sys/powerpc/booke/pmap.c +++ b/sys/powerpc/booke/pmap.c @@ -1621,7 +1621,7 @@ mmu_booke_enter_locked(mmu_t mmu, pmap_t pmap, vm_offset_t va, vm_page_t m, * are turning execute permissions on, icache should * be flushed. */ - if ((flags & (PTE_UX | PTE_SX)) == 0) + if ((pte->flags & (PTE_UX | PTE_SX)) == 0) sync++; } |