[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <392e1ffeeaefd448f69d45041fe4406fbd197852.1301724243.git.len.brown@intel.com>
Date: Sat, 02 Apr 2011 02:22:45 -0400
From: Len Brown <lenb@...nel.org>
To: linux-pm@...ts.linux-foundation.org
Cc: linux-kernel@...r.kernel.org, Len Brown <len.brown@...el.com>,
x86@...nel.org, Jiri Kosina <jkosina@...e.cz>, stable@...nel.org
Subject: [PATCH 03/18] x86 idle APM: deprecate CONFIG_APM_CPU_IDLE
From: Len Brown <len.brown@...el.com>
We don't want to export the pm_idle function pointer to modules.
Currently CONFIG_APM_CPU_IDLE w/ CONFIG_APM_MODULE forces us to.
CONFIG_APM_CPU_IDLE is of dubious value, it runs only on 32-bit
uniprocessor laptops that are over 10 years old. It calls into
the BIOS during idle, and is known to cause a number of machines
to fail.
Removing CONFIG_APM_CPU_IDLE and will allow us to stop exporting
pm_idle. Any systems that were calling into the APM BIOS
at run-time will simply use HLT instead.
cc: x86@...nel.org
cc: Jiri Kosina <jkosina@...e.cz>
cc: stable@...nel.org
Signed-off-by: Len Brown <len.brown@...el.com>
---
Documentation/feature-removal-schedule.txt | 10 ++++++++++
arch/x86/kernel/apm_32.c | 2 ++
2 files changed, 12 insertions(+), 0 deletions(-)
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 54db467..bab1acb 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -14,6 +14,16 @@ Who: Len Brown <len.brown@...el.com>
---------------------------
+What: CONFIG_APM_CPU_IDLE, and its ability to call APM BIOS in idle
+When: 2.6.40
+Why: This optional sub-feature of APM is of dubious reliability,
+ and ancient APM laptops are likely better served by calling HLT.
+ Deleting CONFIG_APM_CPU_IDLE allows x86 to stop exporting
+ the pm_idle function pointer to modules.
+Who: Len Brown <len.brown@...el.com>
+
+----------------------------
+
What: PRISM54
When: 2.6.34
diff --git a/arch/x86/kernel/apm_32.c b/arch/x86/kernel/apm_32.c
index 0e4f24c..072546c 100644
--- a/arch/x86/kernel/apm_32.c
+++ b/arch/x86/kernel/apm_32.c
@@ -359,6 +359,7 @@ struct apm_user {
* idle percentage above which bios idle calls are done
*/
#ifdef CONFIG_APM_CPU_IDLE
+#warning deprecated CONFIG_APM_CPU_IDLE will be deleted in 2.6.40
#define DEFAULT_IDLE_THRESHOLD 95
#else
#define DEFAULT_IDLE_THRESHOLD 100
@@ -902,6 +903,7 @@ static void apm_cpu_idle(void)
unsigned int jiffies_since_last_check = jiffies - last_jiffies;
unsigned int bucket;
+ WARN_ONCE(1, "deprecated apm_cpu_idle will be deleted in 2.6.40");
recalc:
if (jiffies_since_last_check > IDLE_CALC_LIMIT) {
use_apm_idle = 0;
--
1.7.5.rc0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists