x86, mce: don't restart timer if disabled
authorHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Thu, 3 Dec 2009 02:33:08 +0000 (11:33 +0900)
committerH. Peter Anvin <hpa@zytor.com>
Thu, 3 Dec 2009 05:27:32 +0000 (21:27 -0800)
Even it is in error path unlikely taken, add_timer_on() at
CPU_DOWN_FAILED* needs to be skipped if mce_timer is disabled.

Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Huang Ying <ying.huang@intel.com>
Cc: Jan Beulich <jbeulich@novell.com>
Cc: <stable@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/kernel/cpu/mcheck/mce.c

index 721a77ca811536eb2129e02449701948fe9aa9c3..4825a3d6eb40bb076a7663eb8daa896b22933982 100644 (file)
@@ -1991,9 +1991,11 @@ mce_cpu_callback(struct notifier_block *nfb, unsigned long action, void *hcpu)
                break;
        case CPU_DOWN_FAILED:
        case CPU_DOWN_FAILED_FROZEN:
-               t->expires = round_jiffies(jiffies +
+               if (!mce_ignore_ce && check_interval) {
+                       t->expires = round_jiffies(jiffies +
                                           __get_cpu_var(mce_next_interval));
-               add_timer_on(t, cpu);
+                       add_timer_on(t, cpu);
+               }
                smp_call_function_single(cpu, mce_reenable_cpu, &action, 1);
                break;
        case CPU_POST_DEAD: