diff options
Diffstat (limited to 'include/asm-s390')
-rw-r--r-- | include/asm-s390/tlbflush.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/include/asm-s390/tlbflush.h b/include/asm-s390/tlbflush.h index a5e876539ec6..70fa5ae58180 100644 --- a/include/asm-s390/tlbflush.h +++ b/include/asm-s390/tlbflush.h | |||
@@ -106,9 +106,23 @@ static inline void __tlb_flush_mm_cond(struct mm_struct * mm) | |||
106 | */ | 106 | */ |
107 | #define flush_tlb() do { } while (0) | 107 | #define flush_tlb() do { } while (0) |
108 | #define flush_tlb_all() do { } while (0) | 108 | #define flush_tlb_all() do { } while (0) |
109 | #define flush_tlb_mm(mm) __tlb_flush_mm_cond(mm) | ||
110 | #define flush_tlb_page(vma, addr) do { } while (0) | 109 | #define flush_tlb_page(vma, addr) do { } while (0) |
111 | #define flush_tlb_range(vma, start, end) __tlb_flush_mm_cond(mm) | 110 | |
112 | #define flush_tlb_kernel_range(start, end) __tlb_flush_mm(&init_mm) | 111 | static inline void flush_tlb_mm(struct mm_struct *mm) |
112 | { | ||
113 | __tlb_flush_mm_cond(mm); | ||
114 | } | ||
115 | |||
116 | static inline void flush_tlb_range(struct vm_area_struct *vma, | ||
117 | unsigned long start, unsigned long end) | ||
118 | { | ||
119 | __tlb_flush_mm_cond(vma->vm_mm); | ||
120 | } | ||
121 | |||
122 | static inline void flush_tlb_kernel_range(unsigned long start, | ||
123 | unsigned long end) | ||
124 | { | ||
125 | __tlb_flush_mm(&init_mm); | ||
126 | } | ||
113 | 127 | ||
114 | #endif /* _S390_TLBFLUSH_H */ | 128 | #endif /* _S390_TLBFLUSH_H */ |