]> git.baikalelectronics.ru Git - kernel.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>
Wed, 20 Jan 2010 23:24:34 +0000 (15:24 -0800)
commit9bf252b884135b319bb9b09e07531bec473ae88b
treebc73dbdef0688d6c656d04f288e736cb9b60d9b9
parent1102881ac69754f96b09ec59e8ea0714eaa70e81
USB: EHCI & UHCI: fix race between root-hub suspend and port resume

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>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/host/ehci-hub.c
drivers/usb/host/uhci-hcd.c