FROMGIT: usb: gadget: uvc: fix dropped frame after missed isoc

With the re-use of the previous completion status in 0d1c407b1a
("usb: dwc3: gadget: Return proper request status") it could be possible
that the next frame would also get dropped if the current frame has a
missed isoc error. Ensure that an interrupt is requested for the start
of a new frame.

Fixes: fc78941d81 ("usb: gadget: uvc: decrease the interrupt load to a quarter")
Cc: <stable@vger.kernel.org>
Signed-off-by: Dan Vacura <w36195@motorola.com>
Link: https://lore.kernel.org/r/20221018215044.765044-2-w36195@motorola.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Bug: 249635012
(cherry picked from commit 8e8e923a49967b798e7d69f1ce9eff1dd2533547
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-linus)
Change-Id: Ie02e2b8a8ac577232a04e4315158e0b8357460a6
Signed-off-by: Dan Vacura <w36195@motorola.com>
This commit is contained in:
Dan Vacura
2022-10-18 16:50:37 -05:00
parent 2d2cd1af72
commit 45238b84d8

View File

@@ -398,7 +398,8 @@ static void uvcg_video_pump(struct work_struct *work)
/* Endpoint now owns the request */
req = NULL;
video->req_int_count++;
if (buf->state != UVC_BUF_STATE_DONE)
video->req_int_count++;
}
if (!req)