sh: Populate initial secondary CPU info from boot_cpu_data.
authorPaul Mundt <lethal@linux-sh.org>
Wed, 14 Oct 2009 05:14:30 +0000 (14:14 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 14 Oct 2009 06:44:12 +0000 (15:44 +0900)
The secondary CPU info was seeing corrupted results due to not entering
all of the setup paths taken by the boot CPU. So we just memcpy() the
boot cpu data over directly, and then fix up the per-CPU bits.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/smp.c

index 442d8d47a41e40baa75f18476667929d0aff9f98..160db1003cfb121dde1b41b1463de400805495eb 100644 (file)
@@ -35,6 +35,8 @@ static inline void __init smp_store_cpu_info(unsigned int cpu)
 {
        struct sh_cpuinfo *c = cpu_data + cpu;
 
+       memcpy(c, &boot_cpu_data, sizeof(struct sh_cpuinfo));
+
        c->loops_per_jiffy = loops_per_jiffy;
 }