f1aff7aa8e
Introduce some hooks for the shared part of qemu thread between POSIX and Windows implementations. Note that in qemu_mutex_unlock_impl() we moved the call before unlock operation which should make more sense. And we don't need qemu_mutex_post_unlock() hook. Put all these shared hooks into the header files. It should be internal to qemu-thread but not for qemu-thread users, hence put into util/ directory. Reviewed-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20180425025459.5258-3-peterx@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
44 lines
1.0 KiB
C
44 lines
1.0 KiB
C
/*
|
|
* Common qemu-thread implementation header file.
|
|
*
|
|
* Copyright Red Hat, Inc. 2018
|
|
*
|
|
* Authors:
|
|
* Peter Xu <peterx@redhat.com>,
|
|
*
|
|
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
|
* See the COPYING file in the top-level directory.
|
|
*/
|
|
|
|
#ifndef QEMU_THREAD_COMMON_H
|
|
#define QEMU_THREAD_COMMON_H
|
|
|
|
#include "qemu/typedefs.h"
|
|
#include "qemu/thread.h"
|
|
#include "trace.h"
|
|
|
|
static inline void qemu_mutex_post_init(QemuMutex *mutex)
|
|
{
|
|
mutex->initialized = true;
|
|
}
|
|
|
|
static inline void qemu_mutex_pre_lock(QemuMutex *mutex,
|
|
const char *file, int line)
|
|
{
|
|
trace_qemu_mutex_lock(mutex, file, line);
|
|
}
|
|
|
|
static inline void qemu_mutex_post_lock(QemuMutex *mutex,
|
|
const char *file, int line)
|
|
{
|
|
trace_qemu_mutex_locked(mutex, file, line);
|
|
}
|
|
|
|
static inline void qemu_mutex_pre_unlock(QemuMutex *mutex,
|
|
const char *file, int line)
|
|
{
|
|
trace_qemu_mutex_unlock(mutex, file, line);
|
|
}
|
|
|
|
#endif
|