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: Mon, 11 Jan 2016 23:05:28 +0100 From: Peter Zijlstra <peterz@...radead.org> To: Juri Lelli <juri.lelli@....com> Cc: linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org, rjw@...ysocki.net, viresh.kumar@...aro.org, mturquette@...libre.com, steve.muckle@...aro.org, vincent.guittot@...aro.org, morten.rasmussen@....com, dietmar.eggemann@....com Subject: Re: [RFC PATCH 04/19] cpufreq: bring data structures close to their locks On Mon, Jan 11, 2016 at 05:35:45PM +0000, Juri Lelli wrote: > +/** > + * The "cpufreq driver" - the arch- or hardware-dependent low > + * level driver of CPUFreq support, and its spinlock (cpufreq_driver_lock). > + * This lock also protects cpufreq_cpu_data array and cpufreq_policy_list. > + */ > +static struct cpufreq_driver *cpufreq_driver; > +static DEFINE_PER_CPU(struct cpufreq_policy *, cpufreq_cpu_data); > static LIST_HEAD(cpufreq_policy_list); > +static DEFINE_RWLOCK(cpufreq_driver_lock); Part of my suggestion was to fold the per-cpu data of cpufreq_cpu_data into struct cpufreq_driver. That way each cpufreq_driver will have its own copy and there'd be only the one global pointer to swizzle. Something very well suited to RCU.
Powered by blists - more mailing lists