diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-01-18 17:41:32 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-01-18 17:41:32 +0100 |
commit | 99937d6455cea95405ac681c86a857d0fcd530bd (patch) | |
tree | 5a40a9ca966e5feda1040f9ef2c7798ac4d1e234 /arch/x86/kernel/smpboot.c | |
parent | 74e7904559a10cbb9fbf9139c5c42fc87c0f62a4 (diff) | |
parent | 87b264065880fa696c121dad8498a60524e0f6de (diff) | |
download | kernel_samsung_smdk4412-99937d6455cea95405ac681c86a857d0fcd530bd.zip kernel_samsung_smdk4412-99937d6455cea95405ac681c86a857d0fcd530bd.tar.gz kernel_samsung_smdk4412-99937d6455cea95405ac681c86a857d0fcd530bd.tar.bz2 |
Merge branch 'tj-percpu' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu
Diffstat (limited to 'arch/x86/kernel/smpboot.c')
-rw-r--r-- | arch/x86/kernel/smpboot.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c index 2f0e0f1..869b988 100644 --- a/arch/x86/kernel/smpboot.c +++ b/arch/x86/kernel/smpboot.c @@ -790,15 +790,17 @@ static int __cpuinit do_boot_cpu(int apicid, int cpu) set_idle_for_cpu(cpu, c_idle.idle); do_rest: -#ifdef CONFIG_X86_32 per_cpu(current_task, cpu) = c_idle.idle; +#ifdef CONFIG_X86_32 init_gdt(cpu); /* Stack for startup_32 can be just as for start_secondary onwards */ irq_ctx_init(cpu); #else - cpu_pda(cpu)->pcurrent = c_idle.idle; clear_tsk_thread_flag(c_idle.idle, TIF_FORK); initial_gs = per_cpu_offset(cpu); + per_cpu(kernel_stack, cpu) = + (unsigned long)task_stack_page(c_idle.idle) - + KERNEL_STACK_OFFSET + THREAD_SIZE; #endif early_gdt_descr.address = (unsigned long)get_cpu_gdt_table(cpu); initial_code = (unsigned long)start_secondary; |