Hi, We disabled recording cpufreq stats when fast switching was introduced to the cpufreq core as the cpufreq stats required to take a spinlock and that can't be allowed (for performance reasons) on scheduler's hot path.
Here is an attempt to get rid of the lock and bring back the support. V2->V3: - Use READ/WRITE_ONCE() for reset-time as well. - Use unlikely for few conditionals in the hot path. - Better changelogs. - Rebase changes. V1-V2: - Use READ_ONCE/WRITE_ONCE instead of atomic in the first patch. -- Viresh Viresh Kumar (5): cpufreq: stats: Defer stats update to cpufreq_stats_record_transition() cpufreq: stats: Remove locking cpufreq: stats: Mark few conditionals with unlikely() cpufreq: stats: Enable stats for fast-switch as well cpufreq: Move traces and update to policy->cur to cpufreq core drivers/cpufreq/cpufreq.c | 11 ++++ drivers/cpufreq/cpufreq_stats.c | 89 ++++++++++++++++++++------------ kernel/sched/cpufreq_schedutil.c | 12 +---- 3 files changed, 69 insertions(+), 43 deletions(-) -- 2.25.0.rc1.19.g042ed3e048af