[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl
From: |
Richard Henderson |
Subject: |
[PULL 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl |
Date: |
Tue, 15 Jun 2021 18:36:25 -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>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20210614233143.1221879-5-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
- [PULL 0/8] configure: Change to -std=gnu11, Richard Henderson, 2021/06/15
- [PULL 1/8] configure: Use -std=gnu11, Richard Henderson, 2021/06/15
- [PULL 2/8] softfloat: Use _Generic instead of QEMU_GENERIC, Richard Henderson, 2021/06/15
- [PULL 3/8] util: Use real functions for thread-posix QemuRecMutex, Richard Henderson, 2021/06/15
- [PULL 6/8] include/qemu/lockable: Use _Generic instead of QEMU_GENERIC, Richard Henderson, 2021/06/15
- [PULL 4/8] util: Pass file+line to qemu_rec_mutex_unlock_impl,
Richard Henderson <=
- [PULL 7/8] qemu/compiler: Remove QEMU_GENERIC, Richard Henderson, 2021/06/15
- [PULL 8/8] configure: Remove probe for _Static_assert, Richard Henderson, 2021/06/15
- [PULL 5/8] util: Use unique type for QemuRecMutex in thread-posix.h, Richard Henderson, 2021/06/15
- Re: [PULL 0/8] configure: Change to -std=gnu11, no-reply, 2021/06/15
- Re: [PULL 0/8] configure: Change to -std=gnu11, Peter Maydell, 2021/06/17