Skip to content

RFC Scheduler idle notifiers and users

Anton Vorontsov cpufreq linux-arm-kernel lkml 1 version In review

Get series with b4
b4 am 20120208013959.GA24535@panacea

Versions newest first

  1. v1 RFC Latest4 patches 29 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4sched: Introduce idle notifiers APIinclude/linux/sched.h kernel/sched/core.c+48 -00 replies
2/4sched: Wire up idle notifiersarch/arm/kernel/process.c arch/avr32/kernel/process.c arch/blackfin/kernel/process.c +14 more+36 -720 replies
3/4cpufreq: New 'interactive' governordrivers/cpufreq/Kconfig drivers/cpufreq/Makefile drivers/cpufreq/cpufreq_interactive.c +1 more+730 -02 replies
4/4ARM: Move leds idle start/stop calls to sched idle notifiersarch/arm/kernel/leds.c arch/arm/kernel/process.c+24 -40 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH RFC 0/4] Scheduler idle notifiers and users

Hi all,

For some drivers we need to know when scheduler is idling. The most straightforward way is to gracefully hook into the idle loop.

On x86 there are "CPU idle" notifiers in the inner idle loop, but scheduler idle notifiers are different. These notifiers do not run on every invocation/exit from cpuidle, instead they used to notify about scheduler state changes, not HW states.

In other words, CPU idle notifiers work inside while(!need_resched()) loop (nested into idle loop), while scheduler idle notifier work outside of the loop.

The first two patches consolidate scheduler idle entry/exit points, and converts architectures to this new API.

The third patch is a new cpufreq governor, the commit message briefly describes it.

The fourth patch is another user of the notifiers, a trivial one.

Thanks,

p.s. For the reference, the old discussion about CPU/PM idle

     notifiers: http://lkml.org/lkml/2011/6/27/391 
Signature · 2 lines
Anton Vorontsov
Email: [email protected]