On Fri, 30 Apr 2004, David Brownell wrote: > > You don't seem to realize the scope of this problem. Of course we need to > > hold the semaphore. The problem is, for which device? When a driver is > > registered, the driver model core automatically goes through all the > > devices on the bus and probes any that match the driver and don't already > > have their own driver. > > Now I see what you meant. Yes, that's messy -- driver model core doesn't > seem to have a way for bus-specific additional constraints to be applied > when it does probe() ... unless you count the bus match() method, which > could grab the lock but then there'd be no way to release it. > > Yeech. I don't know how that should be fixed either, but I suspect it's > another "not just inside USB" fix.
Maybe it is... but USB is unique so far as I know in the way it allows different drivers to be bound, unbound, and rebound to devices. That alone causes a lot of our difficulties. Speaking of which, have you ever thought about what would happen to the children devices if someone used sysfs to set a hub to configuration 0, or used usbfs to unbind a hub from the hub driver? Pleasant dreams... Alan Stern ------------------------------------------------------- This SF.Net email is sponsored by: Oracle 10g Get certified on the hottest thing ever to hit the market... Oracle 10g. Take an Oracle 10g class now, and we'll give you the exam FREE. http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel