On Sunday 21 January 2007 12:34 am, Sarah Bailey wrote:
> Currently uses wait_for_completion() instead of 
> wait_for_completion_interruptible().

I think you should try to do this with AIO instead.  You'll observe
that if you use AIO properly, the synchronous paths are handled for
you automatically, so you get both sync and async APIs from the same
file operations.  (That's not quite how gadgetfs does it, since it
merges other functionality into read and write calls, but you should
look at that to see how usb_request/urb maps to a KIOCB.)

On the other hand, doing it the way you're doing it here, you only
get a synchronous API to userspace ... which means there's no way
applications can leverage I/O overlap to maximize bandwidth usage.
And we'll never get rid of those ugly usbfs1 AIO kluges.  :(

For bulk endpoints, the functionally complete set of operations
includes not just I/O, but also setting/clearing halts.  How are
those being handld here?

- Dave


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to