From: Shaohua Li Dead CPU notifies online CPU that it's dead using cpu_state variable. After switching to physical cpu hotplug, we forgot setting the variable. This patch fixes it. Currently only __cpu_die uses it. We changed other locations for consistency in case others use it. Signed-off-by: Shaohua Li Acked-by: Ashok Raj Signed-off-by: Andrew Morton --- arch/ia64/kernel/smpboot.c | 3 +++ 1 files changed, 3 insertions(+) diff -puN arch/ia64/kernel/smpboot.c~set-cpu_state-for-cpu-hotplug-ia64 arch/ia64/kernel/smpboot.c --- 25/arch/ia64/kernel/smpboot.c~set-cpu_state-for-cpu-hotplug-ia64 2005-06-15 00:02:21.000000000 -0700 +++ 25-akpm/arch/ia64/kernel/smpboot.c 2005-06-15 00:02:21.000000000 -0700 @@ -346,6 +346,7 @@ smp_callin (void) lock_ipi_calllock(); cpu_set(cpuid, cpu_online_map); unlock_ipi_calllock(); + per_cpu(cpu_state, cpuid) = CPU_ONLINE; smp_setup_percpu_timer(); @@ -611,6 +612,7 @@ void __devinit smp_prepare_boot_cpu(void { cpu_set(smp_processor_id(), cpu_online_map); cpu_set(smp_processor_id(), cpu_callin_map); + per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; } /* @@ -775,6 +777,7 @@ __cpu_up (unsigned int cpu) if (cpu_isset(cpu, cpu_callin_map)) return -EINVAL; + per_cpu(cpu_state, cpu) = CPU_UP_PREPARE; /* Processor goes to start_secondary(), sets online flag */ ret = do_boot_cpu(sapicid, cpu); if (ret < 0) _