Re: [RFC][PATCH 05/15] videobuf2: handle V4L2_FLAG_MEMORY_NON_CONSISTENT in REQBUFS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/28/20 5:45 AM, Tomasz Figa wrote:
> On Thu, Jan 23, 2020 at 8:08 PM Hans Verkuil <hverkuil@xxxxxxxxx> wrote:
>>
>> On 1/22/20 4:48 AM, Sergey Senozhatsky wrote:
>>> On (20/01/22 11:18), Sergey Senozhatsky wrote:
>>> [..]
>>>>>> +    * -
>>>>>> +      - __u32
>>>>>>        - ``reserved``\ [1]
>>>>>>        - A place holder for future extensions. Drivers and applications
>>>>>> -  must set the array to zero.
>>>>>> +  must set the array to zero, unless application wants to specify
>>>>>> +        buffer management ``flags``.
>>>>>
>>>>> I think support for this flag should be signaled as a V4L2_BUF_CAP capability.
>>>>> If the capability is not set, then vb2 should set 'flags' to 0 to preserve the
>>>>> old 'Drivers and applications must set the array to zero' behavior.
>>>>
>>>> The patch set adds V4L2_BUF_CAP_SUPPORTS_CACHE_HINTS towards the end of the
>>>> series, I guess I can shuffle the patches and change the wording here.
>>>
>>> Or I can add separate queue flag and V4L2_BUF_CAP:
>>>
>>> struct vb2_queue {
>>> ...
>>>       allow_cache_hints:1
>>> +     allow_consistency_hints:1
>>> ...
>>> }
>>>
>>> and then have CAP_SUPPORTS_CACHE_HINTS/CAP_SUPPORTS_CONSISTENCY_HINTS.
>>
>> Don't these two go hand-in-hand? I.e. either neither are supported, or
>> both are supported? If so, then one queue flag is sufficient.
> 
> Cache sync hints are already part of the standard UAPI, so I think
> there isn't any capability bit needed for them.

These hints may exist, but they never worked. So I think a capability would
be very useful.

 That said, they aren't
> really tied to non-consistent MMAP buffers. Userspace using USERPTR
> can also use them.

OK, two separate capability bits is fine.

Regards,

	Hans

> 
> MMAP buffer consistency hint deserves a capability bit indeed.
> 
> Best regards,
> Tomasz
> 




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux