[PATCH v5 0/3] Clean up pending requests on stop in software ISP

Milan Zamazal mzamazal at redhat.com
Mon Oct 21 15:37:15 CEST 2024


Fix for the bug #234 where software ISP may not clean up some pending
buffers in stopDevice.

Changes in v5:
- Use a struct instead of std::pair in conversionQueue_.

Changes in v4:
- Request explicitly tracked as suggested by Laurent.

Changes in v3:
- Split to two patches according to different code areas affected.
- Added a check for the request status to prevent canceling a request
  multiple times.
- Calling conversionBuffers_.clear() after the cleanup, to be safer.

Changes in v2:
- The request is additionally canceled.
- New helper method PipelineHandler::cancelRequest() introduced.

Milan Zamazal (3):
  libcamera: pipeline_handler: Provide cancelRequest
  libcamera: simple: Track requests in conversionQueue_
  libcamera: software_isp: Clean up pending requests on stop

 include/libcamera/internal/pipeline_handler.h |  1 +
 src/libcamera/pipeline/simple/simple.cpp      | 36 ++++++++++++-------
 src/libcamera/pipeline_handler.cpp            | 23 ++++++++----
 3 files changed, 40 insertions(+), 20 deletions(-)

-- 
2.44.1



More information about the libcamera-devel mailing list