blob: 93f2b9b7fb2c64945547631a4ae867ae99c6e03f [file] [log] [blame]
From stable-bounces@linux.kernel.org Wed Aug 13 20:55:16 2008
From: Alan Stern <stern@rowland.harvard.edu>
Date: Thu, 14 Aug 2008 03:55:09 GMT
Subject: USB: fix interface unregistration logic
To: jejb@kernel.org, stable@kernel.org
Message-ID: <200808140355.m7E3t9RB011781@hera.kernel.org>
From: Alan Stern <stern@rowland.harvard.edu>
commit 1a21175a615ed346e8043f5e9d60a672266b84b4 upstream
This patch (as1122) fixes a bug: When an interface is unregistered,
its children (sysfs files and endpoint devices) are unregistered after
it instead of before.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Kay Sievers <kay.sievers@vrfy.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/usb/core/message.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -1091,8 +1091,8 @@ void usb_disable_device(struct usb_devic
continue;
dev_dbg(&dev->dev, "unregistering interface %s\n",
interface->dev.bus_id);
- device_del(&interface->dev);
usb_remove_sysfs_intf_files(interface);
+ device_del(&interface->dev);
}
/* Now that the interfaces are unbound, nobody should