All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/5] cpufreq: Record stats with fast-switching
@ 2020-10-05  7:56 Viresh Kumar
  2020-10-05  7:56 ` [PATCH V3 1/5] cpufreq: stats: Defer stats update to cpufreq_stats_record_transition() Viresh Kumar
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Viresh Kumar @ 2020-10-05  7:56 UTC (permalink / raw)
  To: Rafael Wysocki, Ben Segall, Dietmar Eggemann, Ingo Molnar,
	Juri Lelli, Mel Gorman, Peter Zijlstra, Steven Rostedt,
	Vincent Guittot, Viresh Kumar
  Cc: linux-pm, Lukasz Luba, cristian.marussi, sudeep.holla, linux-kernel

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


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-10-05 13:25 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-05  7:56 [PATCH V3 0/5] cpufreq: Record stats with fast-switching Viresh Kumar
2020-10-05  7:56 ` [PATCH V3 1/5] cpufreq: stats: Defer stats update to cpufreq_stats_record_transition() Viresh Kumar
2020-10-05  7:56 ` [PATCH V3 2/5] cpufreq: stats: Remove locking Viresh Kumar
2020-10-05  7:56 ` [PATCH V3 3/5] cpufreq: stats: Mark few conditionals with unlikely() Viresh Kumar
2020-10-05  7:56 ` [PATCH V3 4/5] cpufreq: stats: Enable stats for fast-switch as well Viresh Kumar
2020-10-05  7:56 ` [PATCH V3 5/5] cpufreq: Move traces and update to policy->cur to cpufreq core Viresh Kumar
2020-10-05 13:25 ` [PATCH V3 0/5] cpufreq: Record stats with fast-switching Rafael J. Wysocki

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.