Message ID | 73b2b7bc2fb62415365a06ad413dea93c316cf92.1725285495.git.hverkuil-cisco@xs4all.nl (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | media: vb2: prepare for vb2_ops_wait_prepare/finish removal | expand |
Hi Hans, Thank you for the patch. On Mon, Sep 02, 2024 at 04:04:49PM +0200, Hans Verkuil wrote: > The vb2_queue_init() will expect the vb2_queue lock pointer to be set in > the future. So for those drivers that set the lock later, move it up to > before the vb2_queue_init() call. > > Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > drivers/media/usb/msi2500/msi2500.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/media/usb/msi2500/msi2500.c b/drivers/media/usb/msi2500/msi2500.c > index 5138486abfa0..c42fad1e3204 100644 > --- a/drivers/media/usb/msi2500/msi2500.c > +++ b/drivers/media/usb/msi2500/msi2500.c > @@ -1199,6 +1199,7 @@ static int msi2500_probe(struct usb_interface *intf, > dev->vb_queue.ops = &msi2500_vb2_ops; > dev->vb_queue.mem_ops = &vb2_vmalloc_memops; > dev->vb_queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; > + dev->vb_queue.lock = &dev->vb_queue_lock; > ret = vb2_queue_init(&dev->vb_queue); > if (ret) { > dev_err(dev->dev, "Could not initialize vb2 queue\n"); > @@ -1208,7 +1209,6 @@ static int msi2500_probe(struct usb_interface *intf, > /* Init video_device structure */ > dev->vdev = msi2500_template; > dev->vdev.queue = &dev->vb_queue; > - dev->vdev.queue->lock = &dev->vb_queue_lock; > video_set_drvdata(&dev->vdev, dev); > > /* Register the v4l2_device structure */
diff --git a/drivers/media/usb/msi2500/msi2500.c b/drivers/media/usb/msi2500/msi2500.c index 5138486abfa0..c42fad1e3204 100644 --- a/drivers/media/usb/msi2500/msi2500.c +++ b/drivers/media/usb/msi2500/msi2500.c @@ -1199,6 +1199,7 @@ static int msi2500_probe(struct usb_interface *intf, dev->vb_queue.ops = &msi2500_vb2_ops; dev->vb_queue.mem_ops = &vb2_vmalloc_memops; dev->vb_queue.timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; + dev->vb_queue.lock = &dev->vb_queue_lock; ret = vb2_queue_init(&dev->vb_queue); if (ret) { dev_err(dev->dev, "Could not initialize vb2 queue\n"); @@ -1208,7 +1209,6 @@ static int msi2500_probe(struct usb_interface *intf, /* Init video_device structure */ dev->vdev = msi2500_template; dev->vdev.queue = &dev->vb_queue; - dev->vdev.queue->lock = &dev->vb_queue_lock; video_set_drvdata(&dev->vdev, dev); /* Register the v4l2_device structure */
The vb2_queue_init() will expect the vb2_queue lock pointer to be set in the future. So for those drivers that set the lock later, move it up to before the vb2_queue_init() call. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> --- drivers/media/usb/msi2500/msi2500.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)