From: Russell King Date: Thu, 3 Nov 2005 20:32:45 +0000 (+0000) Subject: [ARM SMP] Do not clear cpu_vm_mask for VIPT caches X-Git-Tag: firefly_0821_release~40169^2~29^2~8^2 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=7e5e6e9a509c4ed2973a345ec7ffb96577f42e26;p=firefly-linux-kernel-4.4.55.git [ARM SMP] Do not clear cpu_vm_mask for VIPT caches Since we do not invalidate TLBs/caches on MM switches, we should not clear the cpu_vm_mask for the CPU. Signed-off-by: Russell King --- diff --git a/include/asm-arm/mmu_context.h b/include/asm-arm/mmu_context.h index 4af9c411c617..57b8def83d41 100644 --- a/include/asm-arm/mmu_context.h +++ b/include/asm-arm/mmu_context.h @@ -86,7 +86,8 @@ switch_mm(struct mm_struct *prev, struct mm_struct *next, cpu_set(cpu, next->cpu_vm_mask); check_context(next); cpu_switch_mm(next->pgd, next); - cpu_clear(cpu, prev->cpu_vm_mask); + if (cache_is_vivt()) + cpu_clear(cpu, prev->cpu_vm_mask); } }