PM / QoS: CPU C-state breakage with PM Qos change
authorVenkatesh Pallipadi <venki@google.com>
Fri, 3 Feb 2012 21:22:25 +0000 (22:22 +0100)
committerRafael J. Wysocki <rjw@sisk.pl>
Sat, 4 Feb 2012 21:23:17 +0000 (22:23 +0100)
commitd020283dc694c9ec31b410f522252f7a8397e67d
tree50ffaf8d59d5f7951f09f7b61eac584f64b7ad96
parent379e0be812ab8a2a351e784b0c987788f5123090
PM / QoS: CPU C-state breakage with PM Qos change

Looks like change "PM QoS: Move and rename the implementation files"
merged during the 3.2 development cycle made PM QoS depend on
CONFIG_PM which depends on (PM_SLEEP || PM_RUNTIME).

That breaks CPU C-states with kernels not having these CONFIGs, causing CPUs
to spend time in Polling loop idle instead of going into deep C-states,
consuming way way more power. This is with either acpi idle or intel idle
enabled.

Either CONFIG_PM should be enabled with any pm_qos users or
the !CONFIG_PM pm_qos_request() should return sane defaults not to break
the existing users. Here's is the patch for the latter option.

[rjw: Modified the changelog slightly.]

Signed-off-by: Venkatesh Pallipadi <venki@google.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Cc: stable@vger.kernel.org
include/linux/pm_qos.h