diff options
Diffstat (limited to 'include/asm-cris/tlbflush.h')
-rw-r--r-- | include/asm-cris/tlbflush.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/include/asm-cris/tlbflush.h b/include/asm-cris/tlbflush.h index 1781fe1a32f6..6ed7d9ae90db 100644 --- a/include/asm-cris/tlbflush.h +++ b/include/asm-cris/tlbflush.h | |||
@@ -18,13 +18,26 @@ | |||
18 | * | 18 | * |
19 | */ | 19 | */ |
20 | 20 | ||
21 | extern void __flush_tlb_all(void); | ||
22 | extern void __flush_tlb_mm(struct mm_struct *mm); | ||
23 | extern void __flush_tlb_page(struct vm_area_struct *vma, | ||
24 | unsigned long addr); | ||
25 | |||
26 | #ifdef CONFIG_SMP | ||
21 | extern void flush_tlb_all(void); | 27 | extern void flush_tlb_all(void); |
22 | extern void flush_tlb_mm(struct mm_struct *mm); | 28 | extern void flush_tlb_mm(struct mm_struct *mm); |
23 | extern void flush_tlb_page(struct vm_area_struct *vma, | 29 | extern void flush_tlb_page(struct vm_area_struct *vma, |
24 | unsigned long addr); | 30 | unsigned long addr); |
25 | extern void flush_tlb_range(struct vm_area_struct *vma, | 31 | #else |
26 | unsigned long start, | 32 | #define flush_tlb_all __flush_tlb_all |
27 | unsigned long end); | 33 | #define flush_tlb_mm __flush_tlb_mm |
34 | #define flush_tlb_page __flush_tlb_page | ||
35 | #endif | ||
36 | |||
37 | static inline void flush_tlb_range(struct vm_area_struct * vma, unsigned long start, unsigned long end) | ||
38 | { | ||
39 | flush_tlb_mm(vma->vm_mm); | ||
40 | } | ||
28 | 41 | ||
29 | extern inline void flush_tlb_pgtables(struct mm_struct *mm, | 42 | extern inline void flush_tlb_pgtables(struct mm_struct *mm, |
30 | unsigned long start, unsigned long end) | 43 | unsigned long start, unsigned long end) |