I think it's a driver bug (usbfs) that it released any interface with an urb still pending.Hi Dave, thanks for reading my emails! There seem to be multiple bugs: (1) releasing an interface but not cancelling pending urbs.
Yes. Are you going to try to develop a patch for "usbfs" to resolve that bug?
(2) devio.c has no way of knowing that a device has been removed (unless it got lucky and somebody claimed an interface on the device), so will still submit urbs etc to it [I didn't test this but I plan to].
The "usbfs" code is supposed to handle that automatically, so that even if you've opened the file descriptor to that device's /proc/bus/usb/BBB/DDD device you can't do I/O on it. If there's a bug there, it needs fixing.
I agree that it'd be better if usbcore guarded against the inevitable driver bugs, but that seems like 2.5 material due to the kind of changes needed.- DaveI think this is a bug in the core: (3) urbs are not being cancelled on hub (device?) removal.
I agree that should get fixed in 2.5, but it'd be too invasive to touch in 2.4 kernels. The reason I want to see it happen is to defend better against buggy device drivers, and to make sure that devices shut down correctly. (I've written about the two changes needed to make that happen elsewhere.)
Sorry, you can't remove a "hub driver" without removingAfter all, suppose I do the following: (a) I submit an interrupt urb to my modem. This urb completes when the state of the telephone line changes (= usually never). (b) I remove the hub driver. The urb has not been unlinked. (c) I unplug the telephone line from my modem. The urb completes. But the hub driver has gone!
the usbcore module, at which point _everything_ shuts down.
- Dave
-------------------------------------------------------
This sf.net email is sponsored by: To learn the basics of securing your web site with SSL, click here to get a FREE TRIAL of a Thawte Server Certificate: http://www.gothawte.com/rd522.html
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
