Re: [PATCH v2] usb:gadget:uvc Do not use worker thread to pump usb requests

From: Greg KH
Date: Fri Oct 27 2023 - 03:20:01 EST


On Thu, Oct 26, 2023 at 09:56:35PM +0000, Jayant Chowdhary wrote:
> This patch is based on top of
> https://lore.kernel.org/linux-usb/20230930184821.310143-1-arakesh@xxxxxxxxxx/T/#t:

That doesn't work in the changelog of a patch at all, it goes below the
--- line p lease.

>
> When we use an async work queue to perform the function of pumping
> usb requests to the usb controller, it is possible that thread scheduling
> affects at what cadence we're able to pump requests. This could mean usb
> requests miss their uframes - resulting in video stream flickers on the host
> device.
>
> In this patch, we move the pumping of usb requests to
> 1) uvcg_video_complete() complete handler for both isoc + bulk
> endpoints. We still send 0 length requests when there is no uvc buffer
> available to encode.
> 2) uvc_v4l2_qbuf - only for bulk endpoints since it is not legal to send
> 0 length requests.
>
> Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
> Signed-off-by: Jayant Chowdhary <jchowdhary@xxxxxxxxxx>
> Suggested-by: Jayant Chowdhary <jchowdhary@xxxxxxxxxx>
> Suggested-by: Avichal Rakesh <arakesh@xxxxxxxxxx>
> Tested-by: Jayant Chowdhary <jchowdhary@xxxxxxxxxx>
> ---
> v1->v2: Fix code style and add self Signed-off-by

Great, but as signed-off-by kind of implies you tested it, no need for
the tested-by now, right? Not a big deal, and normally I'd ignore it
but I know you at least have to do one more version of this based on the
above problem...

thanks,

greg k-h