> > So to my mind the importance of this patch is in improving correctness > > (lack of > > deadlocks) and responsiveness (newly plugged USB devices turn up at once, > > even > > if some other device is doing a long wait in its probe method), rather than > > performance. > > Would it be better to change the drivers so that they _don't_ wait a long > time in their probe methods? For example, usb-storage starts up a > separate thread to take care of potentially long-lasting I/O during > probing. Other drivers could do the same thing, or could use > schedule_work().
The speedtouch driver does too (though it adds an annoying amount of complexity which I would rather have the usb core take care of). Here are some USB drivers which load firmware in their probe method: drivers/bluetooth/bfusb.c drivers/bluetooth/bcm203x.c drivers/net/wireless/zd1211rw/zd_usb.c drivers/net/wireless/zd1201.c drivers/net/irda/irda-usb.c drivers/media/dvb/ttusb-dec/ttusb_dec.c Interestingly enough, I didn't find any examples under drivers/usb. Ciao, Duncan. ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel