From patchwork Tue Jul 7 23:09:49 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Henrique de Moraes Holschuh X-Patchwork-Id: 34525 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n67NA7KO008674 for ; Tue, 7 Jul 2009 23:10:08 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753635AbZGGXKB (ORCPT ); Tue, 7 Jul 2009 19:10:01 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1755336AbZGGXJ7 (ORCPT ); Tue, 7 Jul 2009 19:09:59 -0400 Received: from out1.smtp.messagingengine.com ([66.111.4.25]:35459 "EHLO out1.smtp.messagingengine.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753635AbZGGXJ6 (ORCPT ); Tue, 7 Jul 2009 19:09:58 -0400 Received: from compute1.internal (compute1.internal [10.202.2.41]) by out1.messagingengine.com (Postfix) with ESMTP id 9759D3AFDE1; Tue, 7 Jul 2009 19:09:57 -0400 (EDT) Received: from heartbeat2.messagingengine.com ([10.202.2.161]) by compute1.internal (MEProxy); Tue, 07 Jul 2009 19:09:57 -0400 X-Sasl-enc: X0unyNMleX33kZCtwfCAqNmLZyeNbxPk/oFwsMSeY30w 1247008197 Received: from khazad-dum.debian.net (unknown [201.82.166.239]) by mail.messagingengine.com (Postfix) with ESMTPSA id 42F2F40B5; Tue, 7 Jul 2009 19:09:57 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by localhost.khazad-dum.debian.net (Postfix) with ESMTP id CB53628274; Tue, 7 Jul 2009 20:09:55 -0300 (BRT) X-Virus-Scanned: Debian amavisd-new at khazad-dum.debian.net Received: from khazad-dum.debian.net ([127.0.0.1]) by localhost (khazad-dum.debian.net [127.0.0.1]) (amavisd-new, port 10024) with LMTP id eM73IUWWcHBS; Tue, 7 Jul 2009 20:09:54 -0300 (BRT) Received: by khazad-dum.debian.net (Postfix, from userid 1000) id 9B42E28275; Tue, 7 Jul 2009 20:09:54 -0300 (BRT) From: Henrique de Moraes Holschuh To: Len Brown Cc: linux-acpi@vger.kernel.org, ibm-acpi-devel@lists.sourceforge.net, Henrique de Moraes Holschuh , stable@kernel.org Subject: [PATCH 1/2] thinkpad-acpi: disable broken bay and dock subdrivers Date: Tue, 7 Jul 2009 20:09:49 -0300 Message-Id: <1247008190-29419-2-git-send-email-hmh@hmh.eng.br> X-Mailer: git-send-email 1.6.3.3 In-Reply-To: <1247008190-29419-1-git-send-email-hmh@hmh.eng.br> References: <1247008190-29419-1-git-send-email-hmh@hmh.eng.br> Sender: linux-acpi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-acpi@vger.kernel.org Currently, the ThinkPad-ACPI bay and dock drivers are completely broken, and cause a NULL pointer derreference in kernel mode (and, therefore, an OOPS) when they try to issue events (i.e. on dock, undock, bay ejection, etc). OTOH, the standard ACPI dock driver can handle the hotplug bays and docks of the ThinkPads just fine (including batteries) as of 2.6.27. In fact, it does a much better job of it than thinkpad-acpi ever did. It is just not worth the hassle to find a way to fix this crap without breaking the (deprecated) thinkpad-acpi dock/bay ABI. This is old, deprecated code that sees little testing or use. As a quick fix suitable for -stable backports, mark the thinkpad-acpi bay and dock subdrivers as BROKEN in Kconfig. The dead code will be removed by a later patch. This fixes bugzilla #13669, and should be applied to 2.6.27 and later. Signed-off-by: Henrique de Moraes Holschuh Reported-by: Joerg Platte Cc: stable@kernel.org --- drivers/platform/x86/Kconfig | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig index 46dad12..6335f63 100644 --- a/drivers/platform/x86/Kconfig +++ b/drivers/platform/x86/Kconfig @@ -281,6 +281,7 @@ config THINKPAD_ACPI_DOCK bool "Legacy Docking Station Support" depends on THINKPAD_ACPI depends on ACPI_DOCK=n + depends on BROKEN default n ---help--- Allows the thinkpad_acpi driver to handle docking station events. @@ -294,7 +295,8 @@ config THINKPAD_ACPI_DOCK config THINKPAD_ACPI_BAY bool "Legacy Removable Bay Support" depends on THINKPAD_ACPI - default y + depends on BROKEN + default n ---help--- Allows the thinkpad_acpi driver to handle removable bays. It will electrically disable the device in the bay, and also generate