diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-29 09:47:08 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-29 09:47:08 -0700 |
commit | ca49a601c2b4b74e5cf57fef62122204d1982372 (patch) | |
tree | aac064c0dae4e7d1b2148b7b4b5d9595c624ca49 /arch | |
parent | 5a90fa71f6d45054c78b2bd6dbc4feba1638e1d2 (diff) | |
parent | 7ac5ae4b122f9415948c642b945a26938aa8f347 (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-arm-smp
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/kernel/smp.c | 1 | ||||
-rw-r--r-- | arch/arm/lib/bitops.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-integrator/platsmp.c | 2 |
3 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c index 295e0a8379c..b2085735a2b 100644 --- a/arch/arm/kernel/smp.c +++ b/arch/arm/kernel/smp.c @@ -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(); diff --git a/arch/arm/lib/bitops.h b/arch/arm/lib/bitops.h index 5382a302360..2036ff15bda 100644 --- a/arch/arm/lib/bitops.h +++ b/arch/arm/lib/bitops.h @@ -7,7 +7,7 @@ 1: ldrexb r2, [r1] \instr r2, r2, r3 strexb r0, r2, [r1] - cmpne r0, #0 + cmp r0, #0 bne 1b mov pc, lr .endm diff --git a/arch/arm/mach-integrator/platsmp.c b/arch/arm/mach-integrator/platsmp.c index aecf47ba033..ea10bd8c972 100644 --- a/arch/arm/mach-integrator/platsmp.c +++ b/arch/arm/mach-integrator/platsmp.c @@ -15,6 +15,7 @@ #include <linux/mm.h> #include <asm/atomic.h> +#include <asm/cacheflush.h> #include <asm/delay.h> #include <asm/mmu_context.h> #include <asm/procinfo.h> @@ -80,6 +81,7 @@ int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle) * "cpu" is Linux's internal ID. */ pen_release = cpu; + flush_cache_all(); /* * XXX |