On Tue, Sep 22, 2020 at 02:07:02PM +0300, M. Vefa Bicakci wrote: > This commit resolves a minor bug in the selection/discovery of more > specific USB device drivers for devices that are currently bound to > generic USB device drivers. > > The bug is related to the way a candidate USB device driver is > compared against the generic USB device driver. The code in > is_dev_usb_generic_driver() assumes that the device driver in question > is a USB device driver by calling to_usb_device_driver(dev->driver) > to downcast; however I have observed that this assumption is not always > true, through code instrumentation. > > This commit avoids the incorrect downcast altogether by comparing > the USB device's driver (i.e., dev->driver) to the generic USB > device driver directly. This method was suggested by Alan Stern. > > This bug was found while investigating Andrey Konovalov's report > indicating usbip device driver misbehaviour with the recently merged > generic USB device driver selection feature. The report is linked > below. > > Fixes: d5643d2249 ("USB: Fix device driver race") Nit, this should have been: Fixes: d5643d2249b2 ("USB: Fix device driver race") I'll go fix it up as my scripts are rejecting it as-is... thanks, greg k-h