Re: [PATCH v10 11/54] media: videobuf2: Access vb2_queue bufs array through helper functions

From: Hans Verkuil
Date: Wed Oct 11 2023 - 05:36:59 EST


On 11/10/2023 11:32, Benjamin Gaignard wrote:
>
> Le 11/10/2023 à 10:44, Hans Verkuil a écrit :
>> On 03/10/2023 10:06, Benjamin Gaignard wrote:
>>> This patch adds 2 helpers functions to add and remove vb2 buffers
>>> from a queue. With these 2 and vb2_get_buffer(), bufs field of
>>> struct vb2_queue becomes like a private member of the structure.
>>>
>>> After each call to vb2_get_buffer() we need to be sure that we get
>>> a valid pointer so check the return value of all of them.
>> This needs to be extended: checking the returned pointer is a preparation
>> for when buffers can be deleted. As it is right now, checking for a
>> NULL pointer isn't needed.
>>
>> I wonder if it isn't better to drop those checks and instead apply them
>> at the tail end of this series when the actual work on deleting buffers
>> starts (before patch 49, I think).
>
> I think that checking vb2_get_buffer() return value while removing direct
> call to queue buffers array doesn't hurt here.
> It is also needed to do that before "media: videobuf2: Add helper to get queue number of buffers" patch.

If we convert the drivers first, then there is (I think) no need to
split this patch in two parts, since then this patch is part of a much
shorter series and it is sufficient to just mention in the commit log
that the pointer checks prepare for deleting buffers.

Regards,

Hans

>
> Regards,
> Benjamin
>
>>
>> Regards,
>>
>>     Hans
>>
>>> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
>>> ---
>>>   .../media/common/videobuf2/videobuf2-core.c   | 151 +++++++++++++-----
>>>   .../media/common/videobuf2/videobuf2-v4l2.c   |  51 ++++--
>>>   2 files changed, 146 insertions(+), 56 deletions(-)
>>