Changelog:
v5:     - Fix compile error in cpuidle patch reported by 0-day.
        - Reverse patch order for correct dependency.

v4:     - Misc comments from Ingo are addressed, including style fix,
          timeout handling, fork().
        - Dropped powerclamp patch from this set, move to its own
          series.

v3:     - Rearrange idle.c change based on Rafael's suggestion.

v2:
        - Moved duration timer from powerclamp driver to play_idle()
        - Unexport cpuidle_use_deepest_state
        - Indentation fix

Idle injection drivers today use RT threads to run idle loop. There are
efficiency and accounting issues with the current intel_powerclamp.c
and acpi_pad.c. A while ago, I posted CFS based idle injection patch trying
to address them:
https://lkml.org/lkml/2015/11/13/576

Peter proposed another approach with the introduction of a PF_IDLE flag.
This patchset is based on his original posting:
https://lkml.org/lkml/2014/6/4/56

These patches apply on top of the kworker and cpu hotplug state machine
changes made to Intel powerclamp driver.
https://lkml.org/lkml/2016/10/17/362

Similar changes to ACPI PAD driver is developed along with other
enhancements. It will be posted after this patchset is accepted.


Jacob Pan (1):
  cpuidle: allow setting deepest idle

Peter Zijlstra (1):
  idle: add support for tasks that inject idle

 drivers/cpuidle/cpuidle.c |  13 +++-
 include/linux/cpu.h       |   2 +
 include/linux/cpuidle.h   |   7 +-
 include/linux/sched.h     |   3 +-
 kernel/fork.c             |   2 +-
 kernel/sched/core.c       |   1 +
 kernel/sched/idle.c       | 175 +++++++++++++++++++++++++++++-----------------
 7 files changed, 133 insertions(+), 70 deletions(-)

-- 
1.9.1

Reply via email to