[PATCH 0/3] Hook up powerclamp with PM QOS and cpuidle

From: Jacob Pan
Date: Tue Nov 26 2013 - 18:20:39 EST


This patchset is intended to address the behavior change and efficiency
loss introduced by using consolidated idle routine in powerclamp driver.

Specifically,
[PATCH 3/8] idle, thermal, acpi: Remove home grown idle implementations

The motivation is that after using common idle routine, powerclamp driver
can no longer pick the deepest idle state needed to conserve power.
Idle state is selected by governors which can be influenced by PM QOS and
other factors. This patchset hooks up powerclamp idle injection with PM
QOS and eventually influce idle governors to pick the power saving target
states.

There are some downside of this approach. Due to overhead, communication
with PM QOS is at enable/disable idle injection time instead of each
injection period. The implication is that if the system natual idle is
more than target injected idle, powerclamp will skip some injection period.
During this period however, deepest idle state may still be chosen
necessarily regardless the latency constraint.


Jacob Pan (3):
pm/qos: allow state control of qos class
cpuidle: check for pm qos constraint override
thermal/powerclamp: communicate with pm qos when injecting idle

drivers/cpuidle/governors/ladder.c | 4 ++++
drivers/cpuidle/governors/menu.c | 13 +++++++++++--
drivers/thermal/intel_powerclamp.c | 8 ++++++++
include/linux/pm_qos.h | 10 +++++++++-
kernel/power/qos.c | 24 ++++++++++++++++++++++++
5 files changed, 56 insertions(+), 3 deletions(-)

--
1.8.1.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/