diff options
author | Paul Mackerras <paulus@samba.org> | 2006-02-24 04:05:47 +0100 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-02-24 04:05:47 +0100 |
commit | a00428f5b149e36b8225b2a0812742a6dfb07b8c (patch) | |
tree | a78869cd67cf78a0eb091fb0ea5d397734bd6738 /arch/powerpc/mm/hash_native_64.c | |
parent | [PATCH] powerpc: Add missing vmlinux.bin target (diff) | |
parent | [PATCH] Fix race condition in hvc console. (diff) | |
download | linux-a00428f5b149e36b8225b2a0812742a6dfb07b8c.tar.xz linux-a00428f5b149e36b8225b2a0812742a6dfb07b8c.zip |
Merge ../powerpc-merge
Diffstat (limited to 'arch/powerpc/mm/hash_native_64.c')
-rw-r--r-- | arch/powerpc/mm/hash_native_64.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/powerpc/mm/hash_native_64.c b/arch/powerpc/mm/hash_native_64.c index d96bcfe4c6f6..33654d1b1b43 100644 --- a/arch/powerpc/mm/hash_native_64.c +++ b/arch/powerpc/mm/hash_native_64.c @@ -403,12 +403,17 @@ static void native_hpte_clear(void) */ hpte_v = hptep->v; + /* + * Call __tlbie() here rather than tlbie() since we + * already hold the native_tlbie_lock. + */ if (hpte_v & HPTE_V_VALID) { hptep->v = 0; - tlbie(slot2va(hpte_v, slot), MMU_PAGE_4K, 0); + __tlbie(slot2va(hpte_v, slot), MMU_PAGE_4K); } } + asm volatile("eieio; tlbsync; ptesync":::"memory"); spin_unlock(&native_tlbie_lock); local_irq_restore(flags); } |