Patchwork [Fwd:,RFC:,deprecate,CONFIG_X86_CPU_DEBUG,and,schedule,it,for,rapid,removal]

login
register
mail settings
Submitter Stefan Bader
Date Jan. 19, 2010, 10:39 a.m.
Message ID <4B558BDD.2070701@canonical.com>
Download mbox | patch
Permalink /patch/43177/
State Accepted
Delegated to: Andy Whitcroft
Headers show

Comments

Stefan Bader - Jan. 19, 2010, 10:39 a.m.
Found on stable. We only have it =m for amd64 but for consistency might want to
disable it commonly.

-Stefan


-------- Original Message --------
Subject: RFC: deprecate CONFIG_X86_CPU_DEBUG and schedule it for rapid removal
Date: Sun, 17 Jan 2010 17:26:53 -0800
From: H. Peter Anvin <hpa@zytor.com>
To: Rafael J. Wysocki <rjw@sisk.pl>
CC: Ozan Çağlayan <ozan@pardus.org.tr>,        Yinghai Lu <yinghai@kernel.org>,
       "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
mingo@elte.hu, a.p.zijlstra@chello.nl, stable@kernel.org,        Linus Torvalds
<torvalds@linux-foundation.org>,        Andrew Morton
<akpm@linux-foundation.org>,        Jaswinder Singh Rajput
<jaswinder@kernel.org>,        Ingo Molnar <mingo@elte.hu>, Thomas Gleixner
<tglx@linutronix.de>
References: <4B4E1633.8010700@pardus.org.tr> <201001162312.34189.rjw@sisk.pl>
<4B52D6E2.8000904@pardus.org.tr> <201001171444.14551.rjw@sisk.pl>

CONFIG_X86_CPU_DEBUG really seems to be causing more problems than it
ever solved.  This is an RFC for immediately deprecating it, and
schedule it for removal in the 2.6.34 cycle.

If this was a high value feature, it would be different -- but it's not
even close.

Posting this as an RFC just on the offchance someone actually depends on
this.

	-hpa
Andy Whitcroft - Jan. 27, 2010, 3:17 p.m.
On Tue, Jan 19, 2010 at 11:39:25AM +0100, Stefan Bader wrote:
> Found on stable. We only have it =m for amd64 but for consistency might want to
> disable it commonly.

It does appear to be something that is frowned upon overall, probabally
best to get it disabled now to make sure nothing is relying on it.

Disabling for lucid.

-apw

Patch

From 0a7c8171aa6d0aed1eda3902f675eb9a259d4cde Mon Sep 17 00:00:00 2001
From: H. Peter Anvin <hpa@zytor.com>
Date: Sun, 17 Jan 2010 17:05:59 -0800
Subject: [PATCH] x86: Mark CONFIG_X86_CPU_DEBUG for rapid deprecation
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

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@pardus.org.tr>
Signed-Off-By: H. Peter Anvin <hpa@zytor.com>
LKML-Reference: <4B4F1DE7.307@pardus.org.tr>
Cc: Jaswinder Singh Rajput <jaswinder@kernel.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
---
 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@gmail.com>
 
 ----------------------------
+
+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@zytor.com>
+
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
 	  /dev/cpu/31/cpuid.
 
 config X86_CPU_DEBUG
-	tristate "/sys/kernel/debug/x86/cpu/* - CPU Debug support"
+	tristate "/sys/kernel/debug/x86/cpu/* - CPU Debug support (DEPRECATED)"
 	---help---
 	  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.
+
 choice
 	prompt "High Memory Support"
 	default HIGHMEM4G if !X86_NUMAQ
-- 
1.6.2.5