diff options
Diffstat (limited to 'include/asm-parisc')
-rw-r--r-- | include/asm-parisc/tlbflush.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/asm-parisc/tlbflush.h b/include/asm-parisc/tlbflush.h index 84af4ab1fe51..e97aa8d1eff5 100644 --- a/include/asm-parisc/tlbflush.h +++ b/include/asm-parisc/tlbflush.h | |||
@@ -88,7 +88,7 @@ static inline void flush_tlb_range(struct vm_area_struct *vma, | |||
88 | if (npages >= 512) /* 2MB of space: arbitrary, should be tuned */ | 88 | if (npages >= 512) /* 2MB of space: arbitrary, should be tuned */ |
89 | flush_tlb_all(); | 89 | flush_tlb_all(); |
90 | else { | 90 | else { |
91 | 91 | preempt_disable(); | |
92 | mtsp(vma->vm_mm->context,1); | 92 | mtsp(vma->vm_mm->context,1); |
93 | purge_tlb_start(); | 93 | purge_tlb_start(); |
94 | if (split_tlb) { | 94 | if (split_tlb) { |
@@ -102,6 +102,7 @@ static inline void flush_tlb_range(struct vm_area_struct *vma, | |||
102 | pdtlb(start); | 102 | pdtlb(start); |
103 | start += PAGE_SIZE; | 103 | start += PAGE_SIZE; |
104 | } | 104 | } |
105 | preempt_enable(); | ||
105 | } | 106 | } |
106 | purge_tlb_end(); | 107 | purge_tlb_end(); |
107 | } | 108 | } |