kernel_optimize_test/drivers/usb/core
Alan Stern 32fe01985a USB: mutual exclusion for EHCI init and port resets
This patch (as999) fixes a problem that sometimes shows up when host
controller driver modules are loaded in the wrong order.  If ehci-hcd
happens to initialize an EHCI controller while the companion OHCI or
UHCI controller is in the middle of a port reset, the reset can fail
and the companion may get very confused.  The patch adds an
rw-semaphore and uses it to keep EHCI initialization and port resets
mutually exclusive.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: David Brownell <david-b@pacbell.net>
Cc: David Miller <davem@davemloft.net>
Cc: Dely L Sy <dely.l.sy@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-10-12 14:55:34 -07:00
..
buffer.c USB: a bit more coding style cleanup 2007-02-07 15:44:40 -08:00
config.c usb: usb_get_configuration() obeys authorization 2007-10-12 14:55:06 -07:00
devices.c USB: add IAD support to usbfs and sysfs 2007-07-12 16:34:40 -07:00
devio.c USB: remove traces of urb->status from usbcore 2007-10-12 14:55:24 -07:00
driver.c USB: don't propagate FREEZE or PRETHAW suspends 2007-10-12 14:55:28 -07:00
endpoint.c USB: Get rid of annoying endpoint-release message 2007-10-12 14:55:25 -07:00
file.c USB: prevent char device open/deregister race 2007-07-12 16:29:48 -07:00
generic.c USB: move decision to ignore FREEZE events 2007-10-12 14:55:26 -07:00
hcd-pci.c USB: remove references to dev.power.power_state 2007-07-12 16:29:46 -07:00
hcd.c USB: Export URB statistics for powertop 2007-10-12 14:55:30 -07:00
hcd.h USB: mutual exclusion for EHCI init and port resets 2007-10-12 14:55:34 -07:00
hub.c USB: mutual exclusion for EHCI init and port resets 2007-10-12 14:55:34 -07:00
hub.h USB: Move private hub declarations out of public header file 2006-12-01 14:23:30 -08:00
inode.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
Kconfig USB: add power/persist device attribute 2007-07-12 16:34:30 -07:00
Makefile USB: add a blacklist for devices that can't handle some things we throw at them. 2007-02-23 15:03:46 -08:00
message.c USB: break apart flush_endpoint and disable_endpoint 2007-10-12 14:55:26 -07:00
notify.c usbfs: private mutex for open, release, and remove 2006-09-27 11:58:49 -07:00
otg_whitelist.h USB: Fix apparent typo CONFIG_USB_CDCETHER. 2007-02-16 15:32:18 -08:00
quirks.c USB: remove USB_QUIRK_NO_AUTOSUSPEND 2007-10-12 14:55:28 -07:00
sysfs.c USB: Export URB statistics for powertop 2007-10-12 14:55:30 -07:00
urb.c USB: flush outstanding URBs when suspending 2007-10-12 14:55:26 -07:00
usb.c USB: Export URB statistics for powertop 2007-10-12 14:55:30 -07:00
usb.h USB: rename choose_configuration 2007-10-12 14:55:08 -07:00