Re: [PATCH 1/2] media: uvcvideo: Do not open code uvc_queue_get_current_buffer
From: Laurent Pinchart
Date: Thu Apr 16 2026 - 17:22:56 EST
Hi Ricardo,
Thank you for the patch.
On Wed, Apr 15, 2026 at 03:59:57PM +0000, Ricardo Ribalda wrote:
> Do not re-implement uvc_queue_get_current_buffer() logic inside
> uvc_video_complete(), just call the function.
>
> Signed-off-by: Ricardo Ribalda <ribalda@xxxxxxxxxxxx>
Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> ---
> drivers/media/usb/uvc/uvc_video.c | 10 ++--------
> 1 file changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/media/usb/uvc/uvc_video.c b/drivers/media/usb/uvc/uvc_video.c
> index 40c76c051da2..4feb3699f520 100644
> --- a/drivers/media/usb/uvc/uvc_video.c
> +++ b/drivers/media/usb/uvc/uvc_video.c
> @@ -1693,7 +1693,6 @@ static void uvc_video_complete(struct urb *urb)
> struct vb2_queue *vb2_qmeta = stream->meta.queue.vdev.queue;
> struct uvc_buffer *buf = NULL;
> struct uvc_buffer *buf_meta = NULL;
> - unsigned long flags;
> int ret;
>
> switch (urb->status) {
> @@ -1719,13 +1718,8 @@ static void uvc_video_complete(struct urb *urb)
>
> buf = uvc_queue_get_current_buffer(queue);
>
> - if (vb2_qmeta) {
> - spin_lock_irqsave(&qmeta->irqlock, flags);
> - if (!list_empty(&qmeta->irqqueue))
> - buf_meta = list_first_entry(&qmeta->irqqueue,
> - struct uvc_buffer, queue);
> - spin_unlock_irqrestore(&qmeta->irqlock, flags);
> - }
> + if (vb2_qmeta)
> + buf_meta = uvc_queue_get_current_buffer(qmeta);
>
> /* Re-initialise the URB async work. */
> uvc_urb->async_operations = 0;
--
Regards,
Laurent Pinchart