]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
USB: EHCI & UHCI: fix race between root-hub suspend and port resume
authorAlan Stern <stern@rowland.harvard.edu>
Fri, 8 Jan 2010 16:18:20 +0000 (11:18 -0500)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 25 Jan 2010 18:49:32 +0000 (10:49 -0800)
commitbfec5cee7784fdc9c07c9ef72312dbad0bff5690
tree289fe21f427eb343be214297d64e1465d5bfe60d
parent07d577f8868a40466bf3044d8911c06cc7dc283e
USB: EHCI & UHCI: fix race between root-hub suspend and port resume

commit cec3a53c7fe794237b582e8e77fc0e48465e65ee upstream.

This patch (as1321) fixes a problem with EHCI and UHCI root-hub
suspends: If the suspend occurs while a port is trying to resume, the
resume doesn't finish and simply gets lost.  When remote wakeup is
enabled, this is undesirable behavior.

The patch checks first to see if any port resumes are in progress, and
if they are then it fails the root-hub suspend with -EBUSY.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ehci-hub.c
drivers/usb/host/uhci-hcd.c