Commit 691f5c7b authored by Jan Kiszka's avatar Jan Kiszka Committed by Gerd Hoffmann
Browse files

qxl: Convert to QEMU thread API



Use QEMU thread API instead of pthread directly. We still need to get
rid of pthread_yield, though, to drop pthread.h inclusion.

Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
parent f9ab6091
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1372,7 +1372,7 @@ static void qxl_send_events(PCIQXLDevice *d, uint32_t events)
    if ((old_pending & le_events) == le_events) {
        return;
    }
    if (pthread_self() == d->main) {
    if (qemu_thread_is_self(&d->main)) {
        qxl_update_irq(d);
    } else {
        if (write(d->pipe[1], d, 1) != 1) {
@@ -1391,7 +1391,7 @@ static void init_pipe_signaling(PCIQXLDevice *d)
   fcntl(d->pipe[1], F_SETFL, O_NONBLOCK);
   fcntl(d->pipe[0], F_SETOWN, getpid());

   d->main = pthread_self();
   qemu_thread_get_self(&d->main);
   qemu_set_fd_handler(d->pipe[0], pipe_read, NULL, d);
}

+2 −1
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@
#include "hw.h"
#include "pci.h"
#include "vga_int.h"
#include "qemu-thread.h"

#include "ui/qemu-spice.h"
#include "ui/spice-display.h"
@@ -63,7 +64,7 @@ typedef struct PCIQXLDevice {
    QemuMutex          track_lock;

    /* thread signaling */
    pthread_t          main;
    QemuThread         main;
    int                pipe[2];

    /* ram pci bar */