Messages in this thread | | | Date | Sat, 4 Aug 2012 10:52:16 +0200 | From | Jean Delvare <> | Subject | Re: [PATCH 3/4 V2] Use get_online_cpus to avoid races involving CPU hotplug |
| |
On Fri, 3 Aug 2012 12:35:28 -0700, Silas Boyd-Wickizer wrote: > via_cputemp_init in drivers/hwmon/via-cputemp.c 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 <sbw@mit.edu> > --- > drivers/hwmon/via-cputemp.c | 5 +++++ > 1 file changed, 5 insertions(+) > (...)
Applied, thanks.
-- Jean Delvare
| |