[libcamera-devel] [RFC PATCH 6/6] android: camera_request: Add thread safety annotation

Umang Jain umang.jain at ideasonboard.com
Thu Nov 11 19:09:10 CET 2021


Hi Hiro,

Thank you for the patch.

On 10/29/21 9:44 AM, Hirokazu Honda wrote:
> This applies clang thread safety annotation to
> Camera3RequestDescriptor. Mutex and MutexLocker there are
> replaced with Mutex2 and MutexLocer2.
>
> Signed-off-by: Hirokazu Honda <hiroh at chromium.org>


Looks fine to me,

Reviewed-by: Umang Jain <umang.jain at ideasonboard.com>

> ---
>   src/android/camera_request.h | 7 ++++---
>   1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/src/android/camera_request.h b/src/android/camera_request.h
> index cfafa445..0c8e7287 100644
> --- a/src/android/camera_request.h
> +++ b/src/android/camera_request.h
> @@ -9,10 +9,11 @@
>   
>   #include <map>
>   #include <memory>
> -#include <mutex>
>   #include <vector>
>   
>   #include <libcamera/base/class.h>
> +#include <libcamera/base/mutex.h>
> +#include <libcamera/base/thread_annotations.h>
>   
>   #include <libcamera/camera.h>
>   #include <libcamera/framebuffer.h>
> @@ -46,8 +47,8 @@ public:
>   	};
>   
>   	/* Keeps track of streams requiring post-processing. */
> -	std::map<CameraStream *, StreamBuffer *> pendingStreamsToProcess_;
> -	std::mutex streamsProcessMutex_;
> +	std::map<CameraStream *, StreamBuffer *> pendingStreamsToProcess_ GUARDED_BY(streamsProcessMutex_);
> +	libcamera::Mutex2 streamsProcessMutex_;
>   
>   	Camera3RequestDescriptor(libcamera::Camera *camera,
>   				 const camera3_capture_request_t *camera3Request);


More information about the libcamera-devel mailing list