[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <2099093.cPXO6Nhn9v@netbook>
Date: Sun, 13 Jan 2013 13:34:41 +0100
From: Thomas Schlichter <thomas.schlichter@....de>
To: Len Brown <lenb@...nel.org>, "Rafael J. Wysocki" <rjw@...k.pl>,
Daniel Lezcano <daniel.lezcano@...aro.org>,
Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Peter De Schrijver <pdeschrijver@...dia.com>,
Andreas Müller <goo@...pelspeicher.org>,
Julius Werner <jwerner@...omium.org>,
linux-acpi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH] cpuidle: fix new C-states not functional after AC disconnect
Hi,
there is a long-standing regression about new C-states not working after
disconnecting AC power from a laptop if the cpuidle driver "acpi-idle" is
used. It was reported here:
[1] https://bugzilla.kernel.org/show_bug.cgi?id=42870 (March 5th 2012)
[2] https://bugzilla.kernel.org/show_bug.cgi?id=43349 (June 7th 2012)
[3] https://lkml.org/lkml/2012/10/16/518 (October 19th 2012)
In [1] Andreas proposed a patch that initialized the missing power_usage
values from within acpi_idle in the same way as cpuidle does.
In [2] I proposed a patch to use the power values provided by ACPI to
initialize the power_usage variables.
In [3] Julius proposed a patch to call the initialization function
set_power_states() not only once, but always when the C-states change.
Currently, Daniel Lezcano seems to be working on an intrusive change of not
using the power_usage value at all for choosing a C-state:
[4] https://lkml.org/lkml/2012/12/14/155
As I could not find any of these patches in any git trees to be merged for
3.8, I propose an other, least intrusive patch for the time being. It is
attached an initializes _all_ power_usage values in the first place.
As this is a real power consumption regression since 3.2, I really ask you to
apply anything and push it to stable, too!
Kind regards,
Thomas Schlichter
View attachment "0001-Get-power-info-before-updating-the-C-states.patch" of type "text/x-patch" (1016 bytes)
View attachment "0002-cpuidle-Initialize-power_usage-for-all-C-states.patch" of type "text/x-patch" (1265 bytes)
Powered by blists - more mailing lists