From: Chen Gong Date: Tue, 10 Aug 2010 00:21:09 +0000 (-0700) Subject: hwmon: coretemp: update hotplug condition check X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=0dca94baeab4a1a514841b0a4c8e3a51dfb4d5ae;p=mv-sheeva.git hwmon: coretemp: update hotplug condition check Fix two errors in hotplug. One is for hotplug notifier. The other is unnecessary driver unregister. Because even none of online cpus supports coretemp, we can't assume new onlined cpu doesn't support it either. If related driver is unregistered there we have no chance to use coretemp from then on. Signed-off-by: Chen Gong Cc: Rudolf Marek Cc: Huaxu Wan Cc: Jean Delvare Cc: Guenter Roeck Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c index 05344af5073..c05dc91ff41 100644 --- a/drivers/hwmon/coretemp.c +++ b/drivers/hwmon/coretemp.c @@ -502,10 +502,13 @@ static int __cpuinit coretemp_cpu_callback(struct notifier_block *nfb, switch (action) { case CPU_ONLINE: + case CPU_ONLINE_FROZEN: case CPU_DOWN_FAILED: + case CPU_DOWN_FAILED_FROZEN: coretemp_device_add(cpu); break; case CPU_DOWN_PREPARE: + case CPU_DOWN_PREPARE_FROZEN: coretemp_device_remove(cpu); break; } @@ -566,7 +569,9 @@ exit_devices_unreg: } mutex_unlock(&pdev_list_mutex); exit_driver_unreg: +#ifndef CONFIG_HOTPLUG_CPU platform_driver_unregister(&coretemp_driver); +#endif exit: return err; }