On Fri, 18 Nov 2011, Amit Nagal wrote: > Hi , > > If an USB interface is currently being probed ( usb driver probe > routine is executing ), > and another driver or userspace program triggers a usb reset on the > device containing this interface , > during this time : > > 1) how a usb interface driver can handle such usb reset requests > while currently being probed ? It can't. It will get messed up. > 2) will linux usb subsystem execute probe routine completely first > and then then do usb reset the device ? That depends. If the reset is triggered directly by another driver then it will occur during the probe. But if it is triggered by a user program then it will wait for the probe to finish. However... If the other driver is written correctly, it will always call usb_lock_device_for_reset() before issuing the reset. That routine will wait for the probe to finish before returning. Therefore the probe won't get messed up. You should read the kerneldoc for usb_reset_and_verify_device() and usb_lock_device_for_reset(). > 3) if a usb interface is already claimed , why is usb reset of this > interface allowed by another driver or userspace program . There is no such thing as a USB reset of an interface, there is only a USB reset of an entire device. Another driver might own one of the other interfaces on the same device and might need to reset it. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html