1
0
Fork 0

MIPS: mm: Remove local_flush_tlb_mm()

All 3 variants of local_flush_tlb_mm() are now effectively simple calls
to drop_mmu_context(). Remove them and use drop_mmu_context() directly.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Cc: linux-mips@vger.kernel.org
hifive-unleashed-5.1
Paul Burton 2019-02-02 01:43:22 +00:00
parent f7908a007e
commit 558ec8ad71
No known key found for this signature in database
GPG Key ID: 3EA79FACB57500DD
5 changed files with 5 additions and 28 deletions

View File

@ -14,7 +14,6 @@
* - flush_tlb_kernel_range(start, end) flushes a range of kernel pages
*/
extern void local_flush_tlb_all(void);
extern void local_flush_tlb_mm(struct mm_struct *mm);
extern void local_flush_tlb_range(struct vm_area_struct *vma,
unsigned long start, unsigned long end);
extern void local_flush_tlb_kernel_range(unsigned long start,
@ -23,6 +22,8 @@ extern void local_flush_tlb_page(struct vm_area_struct *vma,
unsigned long page);
extern void local_flush_tlb_one(unsigned long vaddr);
#include <asm/mmu_context.h>
#ifdef CONFIG_SMP
extern void flush_tlb_all(void);
@ -36,7 +37,7 @@ extern void flush_tlb_one(unsigned long vaddr);
#else /* CONFIG_SMP */
#define flush_tlb_all() local_flush_tlb_all()
#define flush_tlb_mm(mm) local_flush_tlb_mm(mm)
#define flush_tlb_mm(mm) drop_mmu_context(mm)
#define flush_tlb_range(vma, vmaddr, end) local_flush_tlb_range(vma, vmaddr, end)
#define flush_tlb_kernel_range(vmaddr,end) \
local_flush_tlb_kernel_range(vmaddr, end)

View File

@ -487,7 +487,7 @@ void flush_tlb_all(void)
static void flush_tlb_mm_ipi(void *mm)
{
local_flush_tlb_mm((struct mm_struct *)mm);
drop_mmu_context((struct mm_struct *)mm);
}
/*
@ -540,7 +540,7 @@ void flush_tlb_mm(struct mm_struct *mm)
cpu_context(cpu, mm) = 0;
}
}
local_flush_tlb_mm(mm);
drop_mmu_context(mm);
preempt_enable();
}

View File

@ -67,18 +67,6 @@ void local_flush_tlb_all(void)
local_irq_restore(flags);
}
void local_flush_tlb_mm(struct mm_struct *mm)
{
#ifdef DEBUG_TLB
int cpu = smp_processor_id();
if (cpu_context(cpu, mm) != 0)
printk("[tlbmm<%lu>]", (unsigned long)cpu_context(cpu, mm));
#endif
drop_mmu_context(mm);
}
void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
unsigned long end)
{

View File

@ -104,13 +104,6 @@ void local_flush_tlb_all(void)
}
EXPORT_SYMBOL(local_flush_tlb_all);
/* All entries common to a mm share an asid. To effectively flush
these entries, we just bump the asid. */
void local_flush_tlb_mm(struct mm_struct *mm)
{
drop_mmu_context(mm);
}
void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
unsigned long end)
{

View File

@ -50,11 +50,6 @@ void local_flush_tlb_all(void)
local_irq_restore(flags);
}
void local_flush_tlb_mm(struct mm_struct *mm)
{
drop_mmu_context(mm);
}
void local_flush_tlb_range(struct vm_area_struct *vma, unsigned long start,
unsigned long end)
{