• Bjørn Mork's avatar
    USB: cdc-wdm: remove from device list on disconnect · 6286d85e
    Bjørn Mork authored
    Prevents dereferencing an invalid struct usb_interface
    pointer.
    
    Always delete entry from device list whether or not the
    rest of the device state cleanup is postponed. The device
    list uses desc->intf as key, and wdm_open will dereference
    this key while searching for a matching device.  A device
    should not appear in the list unless probe() has succeeded
    and disconnect() has not finished.
    
    Cc: Oliver Neukum <oliver@neukum.org>
    Cc: stable <stable@vger.kernel.org>
    Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    6286d85e
cdc-wdm.c 24.1 KB