diff options
author | attilio <attilio@FreeBSD.org> | 2011-06-04 22:05:20 +0000 |
---|---|---|
committer | attilio <attilio@FreeBSD.org> | 2011-06-04 22:05:20 +0000 |
commit | 8e66ca1ff16b21df31a40fa743f8df3844507305 (patch) | |
tree | 7235c316aab81a86e3bfc131b1abae5475040624 /sys/powerpc/aim/mmu_oea64.c | |
parent | 91525e4ff96713dd3149a3477069cc7213d0abae (diff) | |
parent | 786c89f781c52e7423abdc562256ef0830f60be6 (diff) | |
download | FreeBSD-src-8e66ca1ff16b21df31a40fa743f8df3844507305.zip FreeBSD-src-8e66ca1ff16b21df31a40fa743f8df3844507305.tar.gz |
MFC
Diffstat (limited to 'sys/powerpc/aim/mmu_oea64.c')
-rw-r--r-- | sys/powerpc/aim/mmu_oea64.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/powerpc/aim/mmu_oea64.c b/sys/powerpc/aim/mmu_oea64.c index 84e8ecd..291d89b 100644 --- a/sys/powerpc/aim/mmu_oea64.c +++ b/sys/powerpc/aim/mmu_oea64.c @@ -2569,8 +2569,8 @@ moea64_sync_icache(mmu_t mmu, pmap_t pm, vm_offset_t va, vm_size_t sz) lim = round_page(va); len = MIN(lim - va, sz); pvo = moea64_pvo_find_va(pm, va & ~ADDR_POFF); - if (pvo != NULL) { - pa = (pvo->pvo_pte.pte.pte_lo & LPTE_RPGN) | + if (pvo != NULL && !(pvo->pvo_pte.lpte.pte_lo & LPTE_I)) { + pa = (pvo->pvo_pte.lpte.pte_lo & LPTE_RPGN) | (va & ADDR_POFF); moea64_syncicache(mmu, pm, va, pa, len); } |