diff options
Diffstat (limited to 'arch/ia64/mm')
-rw-r--r-- | arch/ia64/mm/tlb.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/ia64/mm/tlb.c b/arch/ia64/mm/tlb.c index c93e0f2b5fea..c79a9b96d02b 100644 --- a/arch/ia64/mm/tlb.c +++ b/arch/ia64/mm/tlb.c | |||
@@ -158,10 +158,12 @@ flush_tlb_range (struct vm_area_struct *vma, unsigned long start, unsigned long | |||
158 | # ifdef CONFIG_SMP | 158 | # ifdef CONFIG_SMP |
159 | platform_global_tlb_purge(mm, start, end, nbits); | 159 | platform_global_tlb_purge(mm, start, end, nbits); |
160 | # else | 160 | # else |
161 | preempt_disable(); | ||
161 | do { | 162 | do { |
162 | ia64_ptcl(start, (nbits<<2)); | 163 | ia64_ptcl(start, (nbits<<2)); |
163 | start += (1UL << nbits); | 164 | start += (1UL << nbits); |
164 | } while (start < end); | 165 | } while (start < end); |
166 | preempt_enable(); | ||
165 | # endif | 167 | # endif |
166 | 168 | ||
167 | ia64_srlz_i(); /* srlz.i implies srlz.d */ | 169 | ia64_srlz_i(); /* srlz.i implies srlz.d */ |