diff options
Diffstat (limited to 'include')
| -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 | } |
