Message ID | 20221017205446.523796-2-w36195@motorola.com |
---|---|
State | New |
Headers | show |
Series | usb: gadget: uvc: fix dropped frame after missed isoc | expand |
On Tue, Oct 18, 2022 at 08:50:03AM +0700, Bagas Sanjaya wrote: > On 10/18/22 03:54, Dan Vacura wrote: > > With the re-use of the previous completion status in 0d1c407b1a749 > > ("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. > > > > Shouldn't the subject line says [PATCH v3 1/6]? Yes. Clerical error on my side not updating this after resolving a check-patch error... Not sure if it matters as this patch can exist on it's own. Or if I can send this again with fixed subject line, but that may confuse others, since there's no code difference. > > -- > An old man doll... just what I always wanted! - Clara >
diff --git a/drivers/usb/gadget/function/uvc_video.c b/drivers/usb/gadget/function/uvc_video.c index bb037fcc90e6..323977716f5a 100644 --- a/drivers/usb/gadget/function/uvc_video.c +++ b/drivers/usb/gadget/function/uvc_video.c @@ -431,7 +431,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)
With the re-use of the previous completion status in 0d1c407b1a749 ("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: fc78941d8169 ("usb: gadget: uvc: decrease the interrupt load to a quarter") Cc: <stable@vger.kernel.org> Signed-off-by: Dan Vacura <w36195@motorola.com> --- V1 -> V3: - no change, new patch in series drivers/usb/gadget/function/uvc_video.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)