I think it's pratically impossible to remove/cancel/erase/unlink an URB submition from its completition handler so that the handler itself will _never_ be called. I tried everything but the system crashes with no kernel messages (!) and the usb_unlink_urb is the problem. I tried putting urb->next = NULL before calling the unlink function, i tried with two and/or more linked urbs as a lot of drivers do, i tried to link every submitted urbs, i tried to unlink just some of them ( or just the "next" urbs), i tried with every flags ASYNC / SYNC unlinking, i tried everything! but there's no way to remove any following submition of the urb inside its handler. Everything works well if the unlink function is called externally. The system is Linux 2.4.19/20 with the uhci and/or ehci module. The code is projected so that It is impossible to call the unlink function externally, so i need to remove it inside the handler if a condition occours. Obviously there are not problem in the handler code itself, given that it doesn't do particular things and what it does is fast. Please help, IS THERE A WAY TO UNLINK/REMOVE/CANCEL/ERASE every damn active submition of an URB from within the completition handler, so that it will be ___never___ called? Oh, ok, the system crashes ..so the transfer is stopped automatically...yeah, but it is not exactly what i want :-)
------------------------------------------------------- This SF.NET email is sponsored by: SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See! http://www.vasoftware.com _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
