David Brownell [off-list ref] writes:
On Sunday 06 December 2009, Robert Jarzmik wrote:
Dropping the lock before complete() is exactly the right thing to do.
Good, just as Alan said too.
But make sure your ep_queue() method understands that sometimes it's
only supposed to *queue* and not activate tx/rx.
Yes, I understand. A kind of atomic count, on all methods called from gadget,
which prevents reentrance (ie. no chains queue()->...->complete()->queue()).
As I have a bit of luck, all transfers are triggered through handle_ep(), which
if not called won't trigger any rx/tx (if counter was incremented).
Thanks for the info.
--
Robert