diff options
author | Akshay Adiga <akshay.adiga@linux.vnet.ibm.com> | 2016-11-08 14:33:28 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2016-11-11 01:41:02 +0100 |
commit | 20b15b7663549b34abcb4a18f16fedb239406c41 (patch) | |
tree | 1b1b4e306b28e582110b7481e53cd06feaa5103e /drivers/cpufreq/cpufreq_governor.h | |
parent | cpufreq: powernv: Adding fast_switch for schedutil (diff) | |
download | linux-20b15b7663549b34abcb4a18f16fedb239406c41.tar.xz linux-20b15b7663549b34abcb4a18f16fedb239406c41.zip |
cpufreq: powernv: Use PMCR to verify global and local pstate
As fast_switch() may get called with interrupt disable mode, we cannot
hold a mutex to update the global_pstate_info. So currently, fast_switch()
does not update the global_pstate_info and it will end up with stale data
whenever pstate is updated through fast_switch().
As the gpstate_timer can fire after fast_switch() has updated the pstates,
the timer handler cannot rely on the cached values of local and global
pstate and needs to read it from the PMCR.
Only gpstate_timer_handler() is affected by the stale cached pstate data
beacause either fast_switch() or target_index() routines will be called
for a given govenor, but gpstate_timer can fire after the governor has
changed to schedutil.
Signed-off-by: Akshay Adiga <akshay.adiga@linux.vnet.ibm.com>
Reviewed-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpufreq/cpufreq_governor.h')
0 files changed, 0 insertions, 0 deletions