From: Silas Boyd-Wickizer Date: Sun, 23 Sep 2012 18:27:32 +0000 (+0200) Subject: hwmon: (via-cputemp) Use get_online_cpus to avoid races involving CPU hotplug X-Git-Tag: v3.6-rc7~2^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1ec3ddfd27a77db55b8c0e80bcd27c656473fb96;p=pandora-kernel.git hwmon: (via-cputemp) Use get_online_cpus to avoid races involving CPU hotplug via_cputemp_init loops with for_each_online_cpu, adding platform_devices, then calls register_hotcpu_notifier. If a CPU is offlined between the loop and register_hotcpu_notifier, then later onlined, via_cputemp_device_add will attempt to add platform devices with the same ID. A similar race occurs during via_cputemp_exit, after the module calls unregister_hotcpu_notifier, a CPU might offline and a device will exist for a CPU that is offline. This fix surrounds for_each_online_cpu and register_hotcpu_notifier with get_online_cpus+put_online_cpus; and surrounds unregister_hotcpu_notifier and device unregistering with get_online_cpus+put_online_cpus. Build tested. Signed-off-by: Silas Boyd-Wickizer Acked-by: Harald Welte Signed-off-by: Jean Delvare --- Reading git-diff-tree failed