diff options
author | 2005-07-30 18:14:15 -0400 | |
---|---|---|
committer | 2005-07-30 18:14:15 -0400 | |
commit | a670fcb43f01a67ef56176afc76e5d43d128b25c (patch) | |
tree | 09c9411c78a33ff980e9ea871bc7686e7589abbf /drivers/usb/core/message.c | |
parent | Merge upstream 2.6.13-rc3 into ieee80211 branch of netdev-2.6. (diff) | |
parent | [PATCH] agp: restore APBASE after setting APSIZE (diff) | |
download | linux-dev-a670fcb43f01a67ef56176afc76e5d43d128b25c.tar.xz linux-dev-a670fcb43f01a67ef56176afc76e5d43d128b25c.zip |
/spare/repo/netdev-2.6 branch 'master'
Diffstat (limited to 'drivers/usb/core/message.c')
-rw-r--r-- | drivers/usb/core/message.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index a428ef479bd7..88d1b376f67c 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c @@ -985,8 +985,10 @@ void usb_disable_device(struct usb_device *dev, int skip_ep0) for (i = 0; i < dev->actconfig->desc.bNumInterfaces; i++) { struct usb_interface *interface; - /* remove this interface */ + /* remove this interface if it has been registered */ interface = dev->actconfig->interface[i]; + if (!klist_node_attached(&interface->dev.knode_bus)) + continue; dev_dbg (&dev->dev, "unregistering interface %s\n", interface->dev.bus_id); usb_remove_sysfs_intf_files(interface); @@ -1439,7 +1441,7 @@ free_interfaces: } } - return ret; + return 0; } // synchronous request completion model |