rpms/kernel/devel linux-2.6-usb-suspend-classes.patch, NONE, 1.1 kernel.spec, 1.68, 1.69

Dave Jones (davej) fedora-extras-commits at redhat.com
Thu Aug 9 20:09:31 UTC 2007


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv2862

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-usb-suspend-classes.patch 
Log Message:
* Thu Aug 09 2007 Dave Jones <davej at redhat.com>
- Do USB suspend only on certain classes of device.


linux-2.6-usb-suspend-classes.patch:

--- NEW FILE linux-2.6-usb-suspend-classes.patch ---
>From davej  Thu Aug  2 20:00:05 2007
Return-Path: <linux-usb-devel-bounces at lists.sourceforge.net>
X-Spam-Checker-Version: SpamAssassin 3.2.2 (2007-07-23) on
	gelk.kernelslacker.org
X-Spam-Level: 
X-Spam-Status: No, score=-6.4 required=5.0 tests=AWL,BAYES_00,
	RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.2.2
Received: from pobox.devel.redhat.com [10.11.255.8]
	by gelk.kernelslacker.org with IMAP (fetchmail-6.3.7)
	for <davej at localhost> (single-drop); Thu, 02 Aug 2007 20:00:05 -0400 (EDT)
Received: from pobox.devel.redhat.com ([unix socket])
	 by pobox.devel.redhat.com (Cyrus v2.2.12-Invoca-RPM-2.2.12-8.1.RHEL4) with LMTPA;
	 Thu, 02 Aug 2007 19:56:41 -0400
X-Sieve: CMU Sieve 2.2
Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26])
	by pobox.devel.redhat.com (8.13.1/8.13.1) with ESMTP id l72NueHI010629;
	Thu, 2 Aug 2007 19:56:40 -0400
Received: from mx2.redhat.com (mx2.redhat.com [10.255.15.25])
	by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id l72NudHe028741;
	Thu, 2 Aug 2007 19:56:40 -0400
Received: from lists-outbound.sourceforge.net (lists-outbound.sourceforge.net [66.35.250.225])
	by mx2.redhat.com (8.13.1/8.13.1) with ESMTP id l72NuXOK013200;
	Thu, 2 Aug 2007 19:56:33 -0400
Received: from sc8-sf-list1-new.sourceforge.net (sc8-sf-list1-new-b.sourceforge.net [10.3.1.93])
	by sc8-sf-spam2.sourceforge.net (Postfix) with ESMTP
	id 8FE6C12AED; Thu,  2 Aug 2007 16:56:27 -0700 (PDT)
Received: from sc8-sf-mx1-b.sourceforge.net ([10.3.1.91]
	helo=mail.sourceforge.net)
	by sc8-sf-list1-new.sourceforge.net with esmtp (Exim 4.43)
	id 1IGkWn-0004vJ-BF for linux-usb-devel at lists.sourceforge.net;
	Thu, 02 Aug 2007 16:56:25 -0700
Received: from [78.32.9.130] (helo=vavatch.codon.org.uk)
	by mail.sourceforge.net with esmtps (TLSv1:AES256-SHA:256)
	(Exim 4.44) id 1IGkWn-0003tG-03
	for linux-usb-devel at lists.sourceforge.net;
	Thu, 02 Aug 2007 16:56:25 -0700
Received: from mjg59 by vavatch.codon.org.uk with local (Exim 4.62)
	(envelope-from <mjg59 at codon.org.uk>)
	id 1IGkWb-0002V5-Bi; Fri, 03 Aug 2007 00:56:16 +0100
Date: Fri, 3 Aug 2007 00:56:13 +0100
From: Matthew Garrett <mjg59 at srcf.ucam.org>
To: linux-usb-devel at lists.sourceforge.net
Message-ID: <20070802235613.GA9487 at srcf.ucam.org>
MIME-Version: 1.0
Content-Disposition: inline
User-Agent: Mutt/1.5.12-2006-07-14
X-SA-Exim-Connect-IP: <locally generated>
X-SA-Exim-Mail-From: mjg59 at codon.org.uk
X-SA-Exim-Version: 4.2.1 (built Tue, 20 Jun 2006 01:35:45 +0000)
X-SA-Exim-Scanned: Yes (on vavatch.codon.org.uk)
Cc: amitk at ubuntu.com, gregkh at suse.de, linux-kernel at vger.kernel.org
Subject: [linux-usb-devel] [PATCH] USB: Only enable autosuspend by default
	on certain device classes
X-BeenThere: linux-usb-devel at lists.sourceforge.net
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: <linux-usb-devel.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/linux-usb-devel>, 
	<mailto:linux-usb-devel-request at lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=linux-usb-devel>
List-Post: <mailto:linux-usb-devel at lists.sourceforge.net>
List-Help: <mailto:linux-usb-devel-request at lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/linux-usb-devel>, 
	<mailto:linux-usb-devel-request at lists.sourceforge.net?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: linux-usb-devel-bounces at lists.sourceforge.net
Errors-To: linux-usb-devel-bounces at lists.sourceforge.net
X-RedHat-Spam-Score: 0.276 
Status: RO
Content-Length: 1912
Lines: 54

We're seeing a large number of problems with devices not appreciating 
USB autosuspend, especially printers and scanners. According to 
http://www.microsoft.com/whdc/system/bus/USB/USBFAQ_intro.mspx only a 
subset of drivers support it in Windows XP, meaning that most devices 
are probably untested in this situation. This patch alters the behaviour 
to match that of Windows. Userspace can still whitelist devices as 
appropriate, and the set of classes supporting autosuspend probably 
covers pretty much every driver likely to be found on any portable 
device.

Signed-off-by: Matthew Garrett <mjg59 at srcf.ucam.org>

---

diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index caaa46f..12ba789 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -1278,6 +1278,22 @@ int usb_new_device(struct usb_device *udev)
 {
 	int err;
 
+#ifdef CONFIG_USB_SUSPEND
+	/* Disable autosuspend for most devices - Windows only enables it
+	   for a small subset of classes, so most hardware hasn't been tested
+	   with it. Userspace can always reenable at a later point */
+
+	switch (udev->descriptor.bDeviceClass) {
+	case USB_CLASS_HID:
+	case USB_CLASS_COMM:
+	case USB_CLASS_WIRELESS_CONTROLLER:
+	case USB_CLASS_HUB:
+		break;
+	default:
+		udev->autosuspend_disabled = 1;
+	}
+#endif
+
 	/* Determine quirks */
 	usb_detect_quirks(udev);


-- 
Matthew Garrett | mjg59 at srcf.ucam.org

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
linux-usb-devel at lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel



Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.68
retrieving revision 1.69
diff -u -r1.68 -r1.69
--- kernel.spec	9 Aug 2007 20:05:54 -0000	1.68
+++ kernel.spec	9 Aug 2007 20:08:58 -0000	1.69
@@ -662,6 +662,7 @@
 Patch1210: linux-2.6-ps3-storage-alias.patch
 Patch1220: linux-2.6-ps3-legacy-bootloader-hack.patch
 Patch1230: linux-2.6-powerpc-spu-vicinity.patch
+Patch1300: linux-2.6-usb-suspend-classes.patch
 %endif
 
 BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root-%{_target_cpu}
@@ -1137,6 +1138,9 @@
 ApplyPatch linux-2.6-wakeups-hdaps.patch
 ApplyPatch linux-2.6-wakeups.patch
 
+# Do USB suspend only on certain classes of device.
+ApplyPatch linux-2.6-usb-suspend-classes.patch
+
 #
 # misc small stuff to make things compile or otherwise improve performance
 #
@@ -1727,6 +1731,9 @@
 
 %changelog
 * Thu Aug 09 2007 Dave Jones <davej at redhat.com>
+- Do USB suspend only on certain classes of device.
+
+* Thu Aug 09 2007 Dave Jones <davej at redhat.com>
 - 2.6.23-rc2-git2
 
 * Thu Aug 09 2007 Chuck Ebbert <cebbert at redhat.com>




More information about the fedora-extras-commits mailing list