[libcamera-devel] [PATCH v2 07/11] android: camera_stream: Protect buffers initialization by mutex_

Hirokazu Honda hiroh at chromium.org
Mon Nov 29 12:44:49 CET 2021


The initialization on buffers_ in CameraStrean::configure() is not
protected by mutex_. It is no problem because configure() is not
invoked simultaneously while other functions are called. This
protects it to keep the thread safety consistency for buffers access.

Signed-off-by: Hirokazu Honda <hiroh at chromium.org>
---
 src/android/camera_stream.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/android/camera_stream.cpp b/src/android/camera_stream.cpp
index 5a62b7cd..2181d094 100644
--- a/src/android/camera_stream.cpp
+++ b/src/android/camera_stream.cpp
@@ -125,6 +125,7 @@ int CameraStream::configure()
 		if (ret < 0)
 			return ret;
 
+		MutexLocker lock(*mutex_);
 		/* Save a pointer to the reserved frame buffers */
 		for (const auto &frameBuffer : allocator_->buffers(stream()))
 			buffers_.push_back(frameBuffer.get());
-- 
2.34.0.rc2.393.gf8c9666880-goog



More information about the libcamera-devel mailing list