> > It's _supposed_ to be the case that after all driver disconnect()
> > methods (for each claimed interface) are called, then the device
> > refcount goes down to one (no more refs from active URBs).  The
> > usbcore-internal usb_disconnect() routine, AFTER all drivers have
> > disconnected, is the only place that the device refcount may go to
> > zero ... but by observation, some drivers are way buggy there.
> 
> Obviously, broken drivers can cause reference counting problems, but you
> can't work around all of them, nor should we. There's just too many
> different failure scenarios that trying to workaround them is just
> wasted effort.
> 
> I'd much rather see something fail and then fix the appropriate driver.
> 
> If it fails in a crash/oops, that's even more of a reason to fix the
> problem :)

Absolutely, I agree.  In fact since I've been tracking down a related
problem, I think I'll submit a patch to highlight this.  Later today,
I suspect ... :)

- Dave



_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to