[GIT PATCH] USB autosuspend fixes for 2.6.23-rc6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It turns out that USB devices suck when it comes to powermanagement
issues :(

A number of patches have been submitted near the end of this kernel
release cycle that add new device ids to the quirk table in the kernel
to disable autosuspend for specific devices.  However, a number of
developers are very worried that even with the testing that has been
done, once 2.6.23 is released, we are going to get a whole raft of angry
users when their devices break in nasty ways.

As an example, it seems that almost 2/3 of all USB printers just can not
handle autosuspend.  And there's a _lot_ of USB printers out there...

When researching how other operating systems handle this, it was found
out that they use a whitelist of devices that are able to properly
suspend.  So, in the future, that is how we are going to handle this.

These two patches address the need today to have users machines still
work, even if they might draw more power than they possibly could (which
is not any more than they did in 2.6.22.)

These patches do two things:
  - disable USB autosuspend on all devices except for USB hubs.  This
    can be easily overridden by userspace to turn on autosuspend for
    devices that a user wants to.  HAL will use a whitelist in the
    future for these types of devices.
  - revert the usb-storage autosuspend patch.  This breaks a number of
    devices out there that can not handle suspend properly, _AND_ the
    current patch is broken even for devices that do work properly under
    some situations.  Data loss is not a good thing to have happen, so
    this patch is reverted for now.  Oliver has more specifics about the
    issues involved here if anyone is curious.

The "disable autosuspend" patch has been in the -mm tree for a while,
and is being shipped by Ubuntu and Red Hat in their bleeding-edge
kernels in order to handle the huge number of broken devices.  openSUSE
will also get this patch for its next kernel release once the suse
developers return from wondering around the woods of the Czech Republic
next week.

Please pull from:
	master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6.git/

The full patches will be sent to the linux-usb-devel mailing list, if
anyone wants to see them.

thanks,

greg k-h


 drivers/usb/core/quirks.c      |    6 ++++++
 drivers/usb/storage/scsiglue.c |   13 ++++---------
 drivers/usb/storage/usb.c      |   27 +++++++--------------------
 3 files changed, 17 insertions(+), 29 deletions(-)

---------------

Alan Stern (1):
      USB: disable autosuspend by default for non-hubs

Greg Kroah-Hartman (1):
      Revert "usb-storage: implement autosuspend"


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux