diff options
| -rw-r--r-- | arch/sh/mm/fault_32.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/arch/sh/mm/fault_32.c b/arch/sh/mm/fault_32.c index 4ef0a1f1a9ab..d1fa27594c6e 100644 --- a/arch/sh/mm/fault_32.c +++ b/arch/sh/mm/fault_32.c | |||
| @@ -299,6 +299,14 @@ asmlinkage int __kprobes __do_page_fault(struct pt_regs *regs, | |||
| 299 | entry = pte_mkdirty(entry); | 299 | entry = pte_mkdirty(entry); | 
| 300 | entry = pte_mkyoung(entry); | 300 | entry = pte_mkyoung(entry); | 
| 301 | 301 | ||
| 302 | #if defined(CONFIG_CPU_SH4) && !defined(CONFIG_SMP) | ||
| 303 | /* | ||
| 304 | * ITLB is not affected by "ldtlb" instruction. | ||
| 305 | * So, we need to flush the entry by ourselves. | ||
| 306 | */ | ||
| 307 | local_flush_tlb_one(get_asid(), address & PAGE_MASK); | ||
| 308 | #endif | ||
| 309 | |||
| 302 | set_pte(pte, entry); | 310 | set_pte(pte, entry); | 
| 303 | update_mmu_cache(NULL, address, entry); | 311 | update_mmu_cache(NULL, address, entry); | 
| 304 | 312 | ||
