diff options
Diffstat (limited to 'arch/sh/mm/tlbflush_64.c')
-rw-r--r-- | arch/sh/mm/tlbflush_64.c | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/arch/sh/mm/tlbflush_64.c b/arch/sh/mm/tlbflush_64.c index 3ce40ea34824..2dcc48528f7a 100644 --- a/arch/sh/mm/tlbflush_64.c +++ b/arch/sh/mm/tlbflush_64.c | |||
@@ -329,22 +329,6 @@ do_sigbus: | |||
329 | goto no_context; | 329 | goto no_context; |
330 | } | 330 | } |
331 | 331 | ||
332 | void update_mmu_cache(struct vm_area_struct * vma, | ||
333 | unsigned long address, pte_t pte) | ||
334 | { | ||
335 | /* | ||
336 | * This appears to get called once for every pte entry that gets | ||
337 | * established => I don't think it's efficient to try refilling the | ||
338 | * TLBs with the pages - some may not get accessed even. Also, for | ||
339 | * executable pages, it is impossible to determine reliably here which | ||
340 | * TLB they should be mapped into (or both even). | ||
341 | * | ||
342 | * So, just do nothing here and handle faults on demand. In the | ||
343 | * TLBMISS handling case, the refill is now done anyway after the pte | ||
344 | * has been fixed up, so that deals with most useful cases. | ||
345 | */ | ||
346 | } | ||
347 | |||
348 | void local_flush_tlb_one(unsigned long asid, unsigned long page) | 332 | void local_flush_tlb_one(unsigned long asid, unsigned long page) |
349 | { | 333 | { |
350 | unsigned long long match, pteh=0, lpage; | 334 | unsigned long long match, pteh=0, lpage; |
@@ -353,7 +337,7 @@ void local_flush_tlb_one(unsigned long asid, unsigned long page) | |||
353 | /* | 337 | /* |
354 | * Sign-extend based on neff. | 338 | * Sign-extend based on neff. |
355 | */ | 339 | */ |
356 | lpage = (page & NEFF_SIGN) ? (page | NEFF_MASK) : page; | 340 | lpage = neff_sign_extend(page); |
357 | match = (asid << PTEH_ASID_SHIFT) | PTEH_VALID; | 341 | match = (asid << PTEH_ASID_SHIFT) | PTEH_VALID; |
358 | match |= lpage; | 342 | match |= lpage; |
359 | 343 | ||
@@ -482,3 +466,7 @@ void local_flush_tlb_kernel_range(unsigned long start, unsigned long end) | |||
482 | /* FIXME: Optimize this later.. */ | 466 | /* FIXME: Optimize this later.. */ |
483 | flush_tlb_all(); | 467 | flush_tlb_all(); |
484 | } | 468 | } |
469 | |||
470 | void __update_tlb(struct vm_area_struct *vma, unsigned long address, pte_t pte) | ||
471 | { | ||
472 | } | ||