]> git.proxmox.com Git - mirror_qemu.git/blobdiff - include/qemu/thread-win32.h
net: add Sun HME (Happy Meal Ethernet) on-board NIC
[mirror_qemu.git] / include / qemu / thread-win32.h
index 3d58081bed77dd1a65a3869f8e8645e432e189fc..3a05e3b3aa968dbe7ed0aff237dd34f34e38009e 100644 (file)
@@ -1,24 +1,38 @@
-#ifndef __QEMU_THREAD_WIN32_H
-#define __QEMU_THREAD_WIN32_H 1
-#include "windows.h"
+#ifndef QEMU_THREAD_WIN32_H
+#define QEMU_THREAD_WIN32_H
+
+#include <windows.h>
 
 struct QemuMutex {
+    SRWLOCK lock;
+    bool initialized;
+};
+
+typedef struct QemuRecMutex QemuRecMutex;
+struct QemuRecMutex {
     CRITICAL_SECTION lock;
-    LONG owner;
+    bool initialized;
 };
 
+void qemu_rec_mutex_destroy(QemuRecMutex *mutex);
+void qemu_rec_mutex_lock(QemuRecMutex *mutex);
+int qemu_rec_mutex_trylock(QemuRecMutex *mutex);
+void qemu_rec_mutex_unlock(QemuRecMutex *mutex);
+
 struct QemuCond {
-    LONG waiters, target;
-    HANDLE sema;
-    HANDLE continue_event;
+    CONDITION_VARIABLE var;
+    bool initialized;
 };
 
 struct QemuSemaphore {
     HANDLE sema;
+    bool initialized;
 };
 
 struct QemuEvent {
+    int value;
     HANDLE event;
+    bool initialized;
 };
 
 typedef struct QemuThreadData QemuThreadData;