2 * Common qemu-thread implementation header file.
4 * Copyright Red Hat, Inc. 2018
7 * Peter Xu <peterx@redhat.com>,
9 * This work is licensed under the terms of the GNU GPL, version 2 or later.
10 * See the COPYING file in the top-level directory.
13 #ifndef QEMU_THREAD_COMMON_H
14 #define QEMU_THREAD_COMMON_H
16 #include "qemu/typedefs.h"
17 #include "qemu/thread.h"
20 static inline void qemu_mutex_post_init(QemuMutex
*mutex
)
22 #ifdef CONFIG_DEBUG_MUTEX
26 mutex
->initialized
= true;
29 static inline void qemu_mutex_pre_lock(QemuMutex
*mutex
,
30 const char *file
, int line
)
32 trace_qemu_mutex_lock(mutex
, file
, line
);
35 static inline void qemu_mutex_post_lock(QemuMutex
*mutex
,
36 const char *file
, int line
)
38 #ifdef CONFIG_DEBUG_MUTEX
42 trace_qemu_mutex_locked(mutex
, file
, line
);
45 static inline void qemu_mutex_pre_unlock(QemuMutex
*mutex
,
46 const char *file
, int line
)
48 #ifdef CONFIG_DEBUG_MUTEX
52 trace_qemu_mutex_unlock(mutex
, file
, line
);