lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 5 Feb 2014 16:44:31 -0800 From: Guenter Roeck <linux@...ck-us.net> To: "Srivatsa S. Bhat" <srivatsa.bhat@...ux.vnet.ibm.com> Cc: paulus@...ba.org, oleg@...hat.com, rusty@...tcorp.com.au, peterz@...radead.org, tglx@...utronix.de, akpm@...ux-foundation.org, mingo@...nel.org, paulmck@...ux.vnet.ibm.com, tj@...nel.org, walken@...gle.com, ego@...ux.vnet.ibm.com, linux@....linux.org.uk, linux-kernel@...r.kernel.org, Jean Delvare <jdelvare@...e.de>, lm-sensors@...sensors.org Subject: Re: [PATCH 43/51] hwmon, via-cputemp: Fix CPU hotplug callback registration On Thu, Feb 06, 2014 at 03:42:19AM +0530, Srivatsa S. Bhat wrote: > Subsystems that want to register CPU hotplug callbacks, as well as perform > initialization for the CPUs that are already online, often do it as shown > below: > > get_online_cpus(); > > for_each_online_cpu(cpu) > init_cpu(cpu); > > register_cpu_notifier(&foobar_cpu_notifier); > > put_online_cpus(); > > This is wrong, since it is prone to ABBA deadlocks involving the > cpu_add_remove_lock and the cpu_hotplug.lock (when running concurrently > with CPU hotplug operations). > > Instead, the correct and race-free way of performing the callback > registration is: > > cpu_maps_update_begin(); > > for_each_online_cpu(cpu) > init_cpu(cpu); > > /* Note the use of the double underscored version of the API */ > __register_cpu_notifier(&foobar_cpu_notifier); > > cpu_maps_update_done(); > > > Fix the hwmon via-cputemp code by using this latter form of callback > registration. > > Cc: Jean Delvare <jdelvare@...e.de> > Cc: Guenter Roeck <linux@...ck-us.net> > Cc: lm-sensors@...sensors.org > Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@...ux.vnet.ibm.com> Applied. Thanks, Guenter -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists