[BUG] pxa27x_udc: possible recursive locking detected in pxa_ep_queue

Robert Jarzmik robert.jarzmik at free.fr
Thu Dec 10 12:49:31 EST 2009


David Brownell <david-b at pacbell.net> 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



More information about the linux-arm-kernel mailing list