linux/drivers/usb/core
Alan Stern 352d026338 USB: don't register endpoints for interfaces that are going away
This patch (as1155) fixes a bug in usbcore.  When interfaces are
deleted, either because the device was disconnected or because of a
configuration change, the extra attribute files and child endpoint
devices may get left behind.  This is because the core removes them
before calling device_del().  But during device_del(), after the
driver is unbound the core will reinstall altsetting 0 and recreate
those extra attributes and children.

The patch prevents this by adding a flag to record when the interface
is in the midst of being unregistered.  When the flag is set, the
attribute files and child devices will not be created.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: stable <stable@kernel.org> [2.6.27, 2.6.26, 2.6.25]
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-11-13 14:45:00 -08:00
..
buffer.c USB: fix codingstyle issues in drivers/usb/core/*.c 2008-02-01 14:35:08 -08:00
config.c USB: ehci tolerates some buggy devices 2008-04-24 21:16:35 -07:00
devices.c usb: hub: add check for unsupported bus topology 2008-07-21 15:16:26 -07:00
devio.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
driver.c USB: don't rebind drivers after failed resume or reset 2008-10-22 10:05:29 -07:00
endpoint.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
file.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
generic.c USB: fix possible deadlock involving sysfs attributes 2008-05-29 13:59:03 -07:00
hcd-pci.c USB: clarify usage of hcd->suspend/resume methods 2008-04-24 21:16:48 -07:00
hcd.c USB: fix crash when URBs are unlinked after the device is gone 2008-10-29 14:54:40 -07:00
hcd.h USB: fix crash when URBs are unlinked after the device is gone 2008-10-29 14:54:40 -07:00
hub.c USB: prevent autosuspend during hub initialization 2008-10-29 14:54:41 -07:00
hub.h wusb: make ep0_reinit available for modules 2008-04-24 21:16:59 -07:00
inode.c USB: remove err() macro from usb core code 2008-10-17 14:41:11 -07:00
Kconfig usb core: fix USB_OTG_BLACKLIST_HUB typo 2008-10-17 14:40:54 -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: don't register endpoints for interfaces that are going away 2008-11-13 14:45:00 -08:00
notify.c USB : correct comments in usb/core/notify.c 2008-02-01 14:34:44 -08:00
otg_whitelist.h USB: fix codingstyle issues in drivers/usb/core/*.h 2008-02-01 14:35:07 -08:00
quirks.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2008-06-17 18:10:40 -07:00
sysfs.c USB: don't register endpoints for interfaces that are going away 2008-11-13 14:45:00 -08:00
urb.c USB: fix crash when URBs are unlinked after the device is gone 2008-10-29 14:54:40 -07:00
usb.c USB: Add new PM callback methods for USB 2008-08-21 10:26:37 -07:00
usb.h USB: Add new PM callback methods for USB 2008-08-21 10:26:37 -07:00