util: Pass file+line to qemu_rec_mutex_unlock_impl
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: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20210614233143.1221879-5-richard.henderson@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
5d63bd5aad
commit
d3192460bf
@ -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);
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user