1
linux/drivers/usb/core
Alan Stern 25118084ef USB: check for hub driver not bound to root hub device
This patch (as1267) changes usb_kick_khubd() and hdev_to_hub() to make
them more resilient against situations where a hub device isn't bound
to the hub driver.  The code assumes that if a root hub was
successfully registered then it must be bound to the hub driver.

But this assumption can fail if the user manually unbinds the hub
driver, or more importantly, if the host controller dies causing
usb_set_configuration to fail.

To protect against these possibilities, make hdev_to_hub() check that
the hub device is configured before dereferencing the active
configuration, and make usb_kick_khubd() check that the pointer to the
hub's private data structure isn't NULL.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-23 06:46:30 -07:00
..
buffer.c
config.c USB: Fix SS endpoint companion descriptor parsing. 2009-09-23 06:46:18 -07:00
devices.c USB: add missing class descriptions used in usb/devices file 2009-07-12 15:16:39 -07:00
devio.c USB: make the "usbfs_snoop" log more pertinent 2009-09-23 06:46:23 -07:00
driver.c USB: make intf.pm_usage an atomic_t 2009-09-23 06:46:23 -07:00
endpoint.c driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
file.c Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
generic.c USB: add API for userspace drivers to "claim" ports 2009-09-23 06:46:22 -07:00
hcd-pci.c USB: new flag for resume-from-hibernation 2009-06-15 21:44:44 -07:00
hcd.c Remove multiple KERN_ prefixes from printk formats 2009-07-08 10:30:03 -07:00
hcd.h USB: fix the clear_tt_buffer interface 2009-07-12 15:16:38 -07:00
hub.c USB: check for hub driver not bound to root hub device 2009-09-23 06:46:30 -07:00
hub.h USB: fix the clear_tt_buffer interface 2009-07-12 15:16:38 -07:00
inode.c const: mark remaining super_operations const 2009-09-22 07:17:24 -07:00
Kconfig Revert USB: usbfs: deprecate and hide option for !embedded 2009-07-12 15:16:39 -07:00
Makefile USB: add the usbfs devices file to debugfs 2009-06-15 21:44:43 -07:00
message.c USB: Let usb_sg_init to set transfer_buffer more often 2009-09-23 06:46:19 -07:00
notify.c
otg_whitelist.h
quirks.c
sysfs.c driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
urb.c USB: Support for bandwidth allocation. 2009-06-15 21:44:49 -07:00
usb.c Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
usb.h USB: add API for userspace drivers to "claim" ports 2009-09-23 06:46:22 -07:00