Skip to content

Commit

Permalink
[ARM SMP] Ensure secondary CPUs have a clean TLB
Browse files Browse the repository at this point in the history
Since ARMv6 CPUs will not flush the TLB on context switches, it is
possible that we may end up with some global TLB entries remaining
present, eventually upsetting userspace.  Explicitly flush the
entire TLB on secondary CPUs as they startup, after we have switched
to the init_mm page tables.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Russell King authored and Russell King committed Jul 28, 2005
1 parent 41c018b commit 505d7b1
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions arch/arm/kernel/smp.c
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,7 @@ asmlinkage void __cpuinit secondary_start_kernel(void)
cpu_set(cpu, mm->cpu_vm_mask);
cpu_switch_mm(mm->pgd, mm);
enter_lazy_tlb(mm, current);
local_flush_tlb_all();

cpu_init();

Expand Down

0 comments on commit 505d7b1

Please sign in to comment.