libcamera: base: Add mutex classes with thread safety annotations
This replaces Mutex and MutexLocker with our own defined classes. The classes are annotated by clang thread safety annotations. So we can add annotation to code where the classes are used. v4l2 code needs to be annotated, which violates Mutex capability. Signed-off-by: Hirokazu Honda <hiroh@chromium.org> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Umang Jain <umang.jain@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
parent
16efd83f5d
commit
c17f172842
7 changed files with 192 additions and 23 deletions
|
@ -14,7 +14,7 @@
|
|||
#include <sys/types.h>
|
||||
#include <vector>
|
||||
|
||||
#include <libcamera/base/thread.h>
|
||||
#include <libcamera/base/mutex.h>
|
||||
|
||||
#include <libcamera/camera.h>
|
||||
|
||||
|
@ -59,7 +59,7 @@ private:
|
|||
int vidioc_querybuf(V4L2CameraFile *file, struct v4l2_buffer *arg);
|
||||
int vidioc_qbuf(V4L2CameraFile *file, struct v4l2_buffer *arg);
|
||||
int vidioc_dqbuf(V4L2CameraFile *file, struct v4l2_buffer *arg,
|
||||
libcamera::Mutex *lock);
|
||||
libcamera::Mutex *lock) LIBCAMERA_TSA_REQUIRES(*lock);
|
||||
int vidioc_streamon(V4L2CameraFile *file, int *arg);
|
||||
int vidioc_streamoff(V4L2CameraFile *file, int *arg);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue