Skip to content

Commit

Permalink
sh: Fix multiple UTLB hit on UP SH-4.
Browse files Browse the repository at this point in the history
This acts as a reversion of 1c6b2ca in
the case of UP SH-4, where we still have the risk of a multiple hit
between the slow and fast paths. As seen on SH7780.

Signed-off-by: Hideo Saito <saito@densan.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
  • Loading branch information
Hideo Saito authored and Paul Mundt committed Feb 14, 2008
1 parent 123100c commit a602cc0
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions arch/sh/mm/fault_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -299,6 +299,14 @@ asmlinkage int __kprobes __do_page_fault(struct pt_regs *regs,
entry = pte_mkdirty(entry);
entry = pte_mkyoung(entry);

#if defined(CONFIG_CPU_SH4) && !defined(CONFIG_SMP)
/*
* ITLB is not affected by "ldtlb" instruction.
* So, we need to flush the entry by ourselves.
*/
local_flush_tlb_one(get_asid(), address & PAGE_MASK);
#endif

set_pte(pte, entry);
update_mmu_cache(NULL, address, entry);

Expand Down

0 comments on commit a602cc0

Please sign in to comment.