[PATCH] x86-64: Fix vgetcpu when CONFIG_HOTPLUG_CPU is disabled
authorAndi Kleen <ak@suse.de>
Tue, 14 Nov 2006 15:57:46 +0000 (16:57 +0100)
committerAndi Kleen <andi@basil.nowhere.org>
Tue, 14 Nov 2006 15:57:46 +0000 (16:57 +0100)
commit8c131af1db510793f87dc43edbc8950a35370df3
tree6d28e2cb1a645ecced3c9973b2573a0c2cdbdb48
parentfa18f477d0987c011cce047a7c3cd1284f547a14
[PATCH] x86-64: Fix vgetcpu when CONFIG_HOTPLUG_CPU is disabled

The vgetcpu per CPU initialization previously relied on CPU hotplug
events for all CPUs to initialize the per CPU state. That only
worked only on kernels with CONFIG_HOTPLUG_CPU enabled.  On the
others some CPUs didn't get their state initialized properly
and vgetcpu wouldn't work.

Change the initialization sequence to instead run in a normal
initcall (which runs after the normal CPU bootup) and initialize
all running CPUs there. Later hotplug CPUs are still handled
with an hotplug notifier.

This actually simplifies the code somewhat.

Signed-off-by: Andi Kleen <ak@suse.de>
arch/x86_64/kernel/smp.c
arch/x86_64/kernel/time.c
arch/x86_64/kernel/vsyscall.c
include/asm-x86_64/vsyscall.h