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

Reply via email to