USB: gadget: f_mtp: dequeue request on error in mtp_read
authorMike Lockwood <lockwood@android.com>
Sat, 19 Feb 2011 20:33:17 +0000 (15:33 -0500)
committermgross <mark.gross@intel.com>
Wed, 9 Nov 2011 20:07:22 +0000 (12:07 -0800)
commit53f90b34e054eb7521eba74b44ee8f1017b5aee3
tree4d2c282859b1ce9f572b38bc69c9e841ea5d772c
parentc14cf8db5a814f4e43be4da4a9c388afa660e8ed
USB: gadget: f_mtp: dequeue request on error in mtp_read

In mtp_read(), if wait_event_interruptible() returns an error, we need to
remove the request from the EP queue.  Else, on the next call to mtp_read(), we
will attempt to enqueue the request again, potentially corrupting the
queue.  This is what happens with musb_gadget_queue(), which does not check for
duplicate requests.

Based on a similar change to f_adb.c

Signed-off-by: Mike Lockwood <lockwood@android.com>
drivers/usb/gadget/f_mtp.c