ChangeSet 1.793.1.19, 2002/10/18 11:35:15-07:00, [EMAIL PROTECTED]

USB: fix problem with removing a USB root hub.


diff -Nru a/drivers/usb/core/usb.c b/drivers/usb/core/usb.c
--- a/drivers/usb/core/usb.c    Fri Oct 18 14:42:59 2002
+++ b/drivers/usb/core/usb.c    Fri Oct 18 14:42:59 2002
@@ -790,6 +790,7 @@
                        usb_disconnect(child);
        }
 
+       dbg ("unregistering interfaces on device %d", dev->devnum);
        if (dev->actconfig) {
                for (i = 0; i < dev->actconfig->bNumInterfaces; i++) {
                        struct usb_interface *interface = 
&dev->actconfig->interface[i];
@@ -799,12 +800,13 @@
                }
        }
 
+       dbg ("unregistering the device %d", dev->devnum);
        /* Free the device number and remove the /proc/bus/usb entry */
        if (dev->devnum > 0) {
                clear_bit(dev->devnum, dev->bus->devmap.devicemap);
                usbfs_remove_device(dev);
-               device_unregister(&dev->dev);
        }
+       device_unregister(&dev->dev);
 
        /* Decrement the reference count, it'll auto free everything when */
        /* it hits 0 which could very well be now */


-------------------------------------------------------
This sf.net email is sponsored by:
Access Your PC Securely with GoToMyPC. Try Free Now
https://www.gotomypc.com/s/OSND/DD
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to