|
@@ -429,9 +429,6 @@ static int watchdog_enable(int cpu)
|
|
|
wake_up_process(p);
|
|
|
}
|
|
|
|
|
|
- /* if any cpu succeeds, watchdog is considered enabled for the system */
|
|
|
- watchdog_enabled = 1;
|
|
|
-
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -459,12 +456,16 @@ static void watchdog_disable(int cpu)
|
|
|
static void watchdog_enable_all_cpus(void)
|
|
|
{
|
|
|
int cpu;
|
|
|
- int result = 0;
|
|
|
+
|
|
|
+ watchdog_enabled = 0;
|
|
|
|
|
|
for_each_online_cpu(cpu)
|
|
|
- result += watchdog_enable(cpu);
|
|
|
+ if (!watchdog_enable(cpu))
|
|
|
+ /* if any cpu succeeds, watchdog is considered
|
|
|
+ enabled for the system */
|
|
|
+ watchdog_enabled = 1;
|
|
|
|
|
|
- if (result)
|
|
|
+ if (!watchdog_enabled)
|
|
|
printk(KERN_ERR "watchdog: failed to be enabled on some cpus\n");
|
|
|
|
|
|
}
|