What's wrong with using the fine macros provided in 2.5 to sleep with TASK_INTERRUPTIBLE and unlink in the interruption case?
The current synchronous calls force TASK_UNINTERRUPTIBLE, and I don't know what macros you're talking about that would do all that. Is there some other synchronous API for urbs, about which I'm unaware?
Sorry, I was confused and thought you'd refer to ordinary usb_submit_urb().
No ... _synchronous_ calls are where most problems seem to lurk.
Indeed there is a problem. Yet we cannot simply change them all to use interruptible sleep. You cannot stop in the middle of usb_reset_device() or similar calls.
Only done by SCSI EH handler threads for now though, yes? Those could have a "block all signals" policy if it wants; maybe it does so already.
The same kind of thing holds true for khubd and enumeration. Any task doing a config change (like set_interface) should block signals, but otherwise I suspect all synchronous calls should be interruptible by default ... though someone ought to look for other cases where that's not true.
Should we simply add a flag to the synchronous calls or add interruptible versions?
Aren't those two options identical? Both are API syntax changes. :)
- Dave
Regards Oliver
-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! Get cracking and register here for some mind boggling fun and the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel