• Alan Stern's avatar
    USB: fix char-device disconnect handling · 501950d8
    Alan Stern authored
    This patch (as1198) fixes a conceptual bug: Somewhere along the line
    we managed to confuse USB class devices with USB char devices.  As a
    result, the code to send a disconnect signal to userspace would not be
    built if both CONFIG_USB_DEVICE_CLASS and CONFIG_USB_DEVICEFS were
    disabled.
    
    The usb_fs_classdev_common_remove() routine has been renamed to
    usbdev_remove() and it is now called whenever any USB device is
    removed, not just when a class device is unregistered.  The notifier
    registration and unregistration calls are no longer conditionally
    compiled.  And since the common removal code will always be called as
    part of the char device interface, there's no need to call it again as
    part of the usbfs interface; thus the invocation of
    usb_fs_classdev_common_remove() has been taken out of
    usbfs_remove_device().
    Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
    Reported-by: default avatarAlon Bar-Lev <alon.barlev@gmail.com>
    Tested-by: default avatarAlon Bar-Lev <alon.barlev@gmail.com>
    Cc: stable <stable@kernel.org>
    
    501950d8
inode.c 17.7 KB