[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <27678ba6-20aa-4ba2-93e2-001a4434a7ea@samsung.com>
Date: Wed, 2 Apr 2025 09:58:03 +0200
From: Marek Szyprowski <m.szyprowski@...sung.com>
To: Michał Mirosław <mirq-linux@...e.qmqm.pl>, Tomasz
Figa <tfiga@...omium.org>
Cc: Mauro Carvalho Chehab <mchehab@...nel.org>, linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] media: videobuf2: check constants during build time
On 28.03.2025 23:05, Michał Mirosław wrote:
> There is nothing a driver author can do fix in the driver to make the
> global constants match. Since the assertion can be verified at build
> time, don't return EINVAL at runtime for it.
>
> Signed-off-by: Michał Mirosław <mirq-linux@...e.qmqm.pl>
Acked-by: Marek Szyprowski <m.szyprowski@...sung.com>
> ---
> drivers/media/common/videobuf2/videobuf2-v4l2.c | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> index 9201d854dbcc..1cd26faee503 100644
> --- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
> +++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> @@ -903,6 +903,11 @@ EXPORT_SYMBOL_GPL(vb2_expbuf);
>
> int vb2_queue_init_name(struct vb2_queue *q, const char *name)
> {
> + /* vb2_memory should match with v4l2_memory */
> + BUILD_BUG_ON(VB2_MEMORY_MMAP != (int)V4L2_MEMORY_MMAP);
> + BUILD_BUG_ON(VB2_MEMORY_USERPTR != (int)V4L2_MEMORY_USERPTR);
> + BUILD_BUG_ON(VB2_MEMORY_DMABUF != (int)V4L2_MEMORY_DMABUF);
> +
> /*
> * Sanity check
> */
> @@ -916,12 +921,6 @@ int vb2_queue_init_name(struct vb2_queue *q, const char *name)
> WARN_ON((q->timestamp_flags & V4L2_BUF_FLAG_TIMESTAMP_MASK) ==
> V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN);
>
> - /* Warn that vb2_memory should match with v4l2_memory */
> - if (WARN_ON(VB2_MEMORY_MMAP != (int)V4L2_MEMORY_MMAP)
> - || WARN_ON(VB2_MEMORY_USERPTR != (int)V4L2_MEMORY_USERPTR)
> - || WARN_ON(VB2_MEMORY_DMABUF != (int)V4L2_MEMORY_DMABUF))
> - return -EINVAL;
> -
> if (q->buf_struct_size == 0)
> q->buf_struct_size = sizeof(struct vb2_v4l2_buffer);
>
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
Powered by blists - more mailing lists