x86/apic/uv: Fix the hotplug notifier
authorThomas Gleixner <tglx@linutronix.de>
Sat, 19 Mar 2016 10:47:39 +0000 (11:47 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 19 Mar 2016 12:40:08 +0000 (13:40 +0100)
The notifier is missing the CPU_DOWN_FAILED transition. That leaves the
heartbeat disabled when CPU_DOWN_PREPARE fails.

It also does not handle the FROZEN transition variants. That might not be an
issue for UV, but it's inconsistent.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Dimitri Sivanich <sivanich@sgi.com>
arch/x86/kernel/apic/x2apic_uv_x.c

index 278070381aeee87776dc794d9d0ac223b62137ca..8f4942e2bcbb21584a78225b1208adefe86e0aa9 100644 (file)
@@ -792,7 +792,8 @@ static int uv_scir_cpu_notify(struct notifier_block *self, unsigned long action,
 {
        long cpu = (long)hcpu;
 
-       switch (action) {
+       switch (action & ~CPU_TASKS_FROZEN) {
+       case CPU_DOWN_FAILED:
        case CPU_ONLINE:
                uv_heartbeat_enable(cpu);
                break;