[PATCH] x86: Mark CONFIG_X86_CPU_DEBUG for rapid deprecation

From: H . Peter Anvin
Date: Sun Jan 17 2010 - 20:05:59 EST

The CONFIG_X86_CPU_DEBUG feature provides for a filesystem view of
some x86 CPU state in debugfs. However, all this information is
already available to userspace via dedicated interfaces, and this
could just as easily be done in pure userspace.

It wouldn't be a problem, per se, except that this code has caused
boot failures in real-world scenarios when people have enabled it, see
for example kernel bugzilla 15075.

This is a good example of why this kind of functionality has no
business being in the kernel in the first place.

Mark this code deprecated and schedule it for rapid removal.

Reported-by: Ozan ÃaÄlayan <ozan@xxxxxxxxxxxxx>
Signed-Off-By: H. Peter Anvin <hpa@xxxxxxxxx>
LKML-Reference: <4B4F1DE7.307@xxxxxxxxxxxxx>
Cc: Jaswinder Singh Rajput <jaswinder@xxxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Documentation/feature-removal-schedule.txt | 9 +++++++++
arch/x86/Kconfig | 9 ++++++++-
2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 870d190..49aabf1 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -493,3 +493,12 @@ Why: These two features use non-standard interfaces. There are the
Who: Corentin Chary <corentin.chary@xxxxxxxxx>

+What: Support for x86 debug information via debugfs (CONFIG_X86_CPU_DEBUG)
+When: 2.6.34
+Why: This feature does not introduce any functionality that is not
+ available through pure userspace. However, it has been known
+ to causeboot failures in some hardware configurations.
+Who: H. Peter Anvin <hpa@xxxxxxxxx>
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 3b2a5ac..eb1751d 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -987,11 +987,18 @@ config X86_CPUID

config X86_CPU_DEBUG
- tristate "/sys/kernel/debug/x86/cpu/* - CPU Debug support"
+ tristate "/sys/kernel/debug/x86/cpu/* - CPU Debug support (DEPRECATED)"
If you select this option, this will provide various x86 CPUs
information through debugfs.

+ This feature is strongly deprecated. It has been known to cause
+ problems with some hardware configurations and does not
+ provide any functionality that is not available through pure
+ userspace means. It will be removed in the near future.
+ It is strongly recommended that you select N here.
prompt "High Memory Support"
default HIGHMEM4G if !X86_NUMAQ

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/