[libcamera-devel] [PATCH v4 0/7] libcamera: V4L2BufferCache: Improve cache eviction strategy

Niklas Söderlund niklas.soderlund at ragnatech.se
Fri Mar 6 17:56:39 CET 2020


Hi,

I have now pushed this series to master.

On 2020-03-05 21:38:01 +0100, Niklas Söderlund wrote:
> Hello,
> 
> This series improves the function of the V4L2BufferCache and how
> it selects which cache entries to evict. This solves a real issue where
> if the cache is not pre-allocated the cache can perform suboptimally and
> not utilise all the entries in the cache.
> 
> Patch 1/7 fix an error in the test class BufferSource found as code in
> v1 of this series was based on it. 2/7 Extracts the BufferSource from
> the camera buffer import test so it can be used in the new test
> for the V4L2BufferCache. Patch 3/7, 4/7 and 5/7 fix small issues with
> the V4L2BufferCache pointed out in review of v2. Patch 6/7 add tests
> which breaks without the improved cache eviction strategy introduced in
> 7/7.
> 
> Niklas Söderlund (7):
>   test: camera: buffer_import: Fix error messages
>   test: Extract BufferSource class out of camera tests to libtest
>   libcamera: V4L2BufferCache: Mark Entry::operator==() as const
>   libcamera: V4L2BufferCache: Use the entry reference
>   libcamera: V4L2BufferCache: Check for hot hit first
>   test: v4l2_videodevice: Add test for V4L2BufferCache
>   libcamera: V4L2BufferCache: Improve cache eviction strategy
> 
>  src/libcamera/include/v4l2_videodevice.h |   9 +-
>  src/libcamera/v4l2_videodevice.cpp       |  31 ++--
>  test/camera/buffer_import.cpp            |  92 +---------
>  test/libtest/buffer_source.cpp           |  98 +++++++++++
>  test/libtest/buffer_source.h             |  32 ++++
>  test/libtest/meson.build                 |  11 +-
>  test/v4l2_videodevice/buffer_cache.cpp   | 215 +++++++++++++++++++++++
>  test/v4l2_videodevice/meson.build        |   1 +
>  8 files changed, 379 insertions(+), 110 deletions(-)
>  create mode 100644 test/libtest/buffer_source.cpp
>  create mode 100644 test/libtest/buffer_source.h
>  create mode 100644 test/v4l2_videodevice/buffer_cache.cpp
> 
> -- 
> 2.25.1
> 

-- 
Regards,
Niklas Söderlund


More information about the libcamera-devel mailing list