[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl
From: |
Richard Henderson |
Subject: |
[PATCH v2 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl |
Date: |
Mon, 14 Jun 2021 16:31:39 -0700 |
Create macros for file+line expansion in qemu_rec_mutex_unlock
like we have for qemu_mutex_unlock.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
include/qemu/thread.h | 10 +++++++++-
util/qemu-thread-posix.c | 4 ++--
util/qemu-thread-win32.c | 2 +-
3 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/include/qemu/thread.h b/include/qemu/thread.h
index 2c0d85f3bc..460568d67d 100644
--- a/include/qemu/thread.h
+++ b/include/qemu/thread.h
@@ -32,7 +32,7 @@ void qemu_rec_mutex_init(QemuRecMutex *mutex);
void qemu_rec_mutex_destroy(QemuRecMutex *mutex);
void qemu_rec_mutex_lock_impl(QemuRecMutex *mutex, const char *file, int line);
int qemu_rec_mutex_trylock_impl(QemuRecMutex *mutex, const char *file, int
line);
-void qemu_rec_mutex_unlock(QemuRecMutex *mutex);
+void qemu_rec_mutex_unlock_impl(QemuRecMutex *mutex, const char *file, int
line);
typedef void (*QemuMutexLockFunc)(QemuMutex *m, const char *f, int l);
typedef int (*QemuMutexTrylockFunc)(QemuMutex *m, const char *f, int l);
@@ -110,6 +110,9 @@ extern QemuCondTimedWaitFunc qemu_cond_timedwait_func;
#define qemu_mutex_unlock(mutex) \
qemu_mutex_unlock_impl(mutex, __FILE__, __LINE__)
+#define qemu_rec_mutex_unlock(mutex) \
+ qemu_rec_mutex_unlock_impl(mutex, __FILE__, __LINE__)
+
static inline void (qemu_mutex_lock)(QemuMutex *mutex)
{
qemu_mutex_lock(mutex);
@@ -135,6 +138,11 @@ static inline int (qemu_rec_mutex_trylock)(QemuRecMutex
*mutex)
return qemu_rec_mutex_trylock(mutex);
}
+static inline void (qemu_rec_mutex_unlock)(QemuRecMutex *mutex)
+{
+ qemu_rec_mutex_unlock(mutex);
+}
+
void qemu_cond_init(QemuCond *cond);
void qemu_cond_destroy(QemuCond *cond);
diff --git a/util/qemu-thread-posix.c b/util/qemu-thread-posix.c
index 8e2b6653f5..d990826ed8 100644
--- a/util/qemu-thread-posix.c
+++ b/util/qemu-thread-posix.c
@@ -139,9 +139,9 @@ int qemu_rec_mutex_trylock_impl(QemuRecMutex *mutex, const
char *file, int line)
return qemu_mutex_trylock_impl(mutex, file, line);
}
-void qemu_rec_mutex_unlock(QemuRecMutex *mutex)
+void qemu_rec_mutex_unlock_impl(QemuRecMutex *mutex, const char *file, int
line)
{
- qemu_mutex_unlock(mutex);
+ qemu_mutex_unlock_impl(mutex, file, line);
}
void qemu_cond_init(QemuCond *cond)
diff --git a/util/qemu-thread-win32.c b/util/qemu-thread-win32.c
index cb5aa2018c..52eb19f351 100644
--- a/util/qemu-thread-win32.c
+++ b/util/qemu-thread-win32.c
@@ -105,7 +105,7 @@ int qemu_rec_mutex_trylock_impl(QemuRecMutex *mutex, const
char *file, int line)
return !TryEnterCriticalSection(&mutex->lock);
}
-void qemu_rec_mutex_unlock(QemuRecMutex *mutex)
+void qemu_rec_mutex_unlock_impl(QemuRecMutex *mutex, const char *file, int
line)
{
assert(mutex->initialized);
LeaveCriticalSection(&mutex->lock);
--
2.25.1
- Re: [PATCH v2 5/8] util: Use unique type for QemuRecMutex in thread-posix.h, (continued)
- [PATCH v2 2/8] softfloat: Use _Generic instead of QEMU_GENERIC, Richard Henderson, 2021/06/14
- [PATCH v2 3/8] util: Use real functions for thread-posix QemuRecMutex, Richard Henderson, 2021/06/14
- [PATCH v2 6/8] include/qemu/lockable: Use _Generic instead of QEMU_GENERIC, Richard Henderson, 2021/06/14
- [PATCH v2 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl,
Richard Henderson <=
- [PATCH v2 7/8] qemu/compiler: Remove QEMU_GENERIC, Richard Henderson, 2021/06/14
- [PATCH v2 8/8] configure: Remove probe for _Static_assert, Richard Henderson, 2021/06/14
- Re: [PATCH v2 0/8] configure: Change to -std=gnu11, no-reply, 2021/06/14
- Re: [PATCH v2 0/8] configure: Change to -std=gnu11, Paolo Bonzini, 2021/06/16