On 02-02-16, 17:01, Juri Lelli wrote:
Hi Rafael,
On 02/02/16 17:35, Rafael J. Wysocki wrote:
On Tue, Feb 2, 2016 at 4:47 PM, Juri Lelli juri.lelli@arm.com wrote:
This patch cleans things up a lot, that's good.
One thing I'm still concerned about, though: don't we need some locking in place for some of the store operations on governors attributes? Are store_{ignore_nice_load, sampling_down_fact, etc} safe without locking?
That would require some investigation I suppose.
Yeah, that protection is required. Sorry about that.
It seems that we can call them from different cpus concurrently.
Yes, we can.
One quick-and-dirty way of dealing with that might be to introduce a "sysfs lock" into struct dbs_data and hold that around the invocation of gattr->store() in the sysfs_ops's ->store callback.
s/dirty/sane ? :)
Can't we actually try to use the policy->rwsem (or one of the core locks) + wait_for_completion approach as we do in cpufreq core?
policy->rwsem will defeat the purpose of this change as it will reintroduce the ABBA issue.