aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/mm/tlb-r4k.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2012-10-16 19:01:21 -0400
committerRalf Baechle <ralf@linux-mips.org>2012-10-16 19:01:21 -0400
commitfb944c9ba3f4838a64929a1926822e987b4e44c0 (patch)
tree288de3517e82ae560d154c69cea57e98c96d2b51 /arch/mips/mm/tlb-r4k.c
parent01422ff49135e0b747132686405ea8a58f760997 (diff)
MIPS: hugetlbfs: Fix hazard between tlb write and pagemask restoration.
On some CPU the write to pagemask might complete before the TLB write instruction reads from the pagemask register. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/mm/tlb-r4k.c')
-rw-r--r--arch/mips/mm/tlb-r4k.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/mips/mm/tlb-r4k.c b/arch/mips/mm/tlb-r4k.c
index 87b9cfcc30ff..4b9b935a070e 100644
--- a/arch/mips/mm/tlb-r4k.c
+++ b/arch/mips/mm/tlb-r4k.c
@@ -320,6 +320,7 @@ void __update_tlb(struct vm_area_struct * vma, unsigned long address, pte_t pte)
320 tlb_write_random(); 320 tlb_write_random();
321 else 321 else
322 tlb_write_indexed(); 322 tlb_write_indexed();
323 tlbw_use_hazard();
323 write_c0_pagemask(PM_DEFAULT_MASK); 324 write_c0_pagemask(PM_DEFAULT_MASK);
324 } else 325 } else
325#endif 326#endif