From a5ce2c0edb09c199cdf1c64f468579f9746c77aa Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Thu, 9 Sep 2010 18:56:45 +0200 Subject: [PATCH] server: Ensure we flush the release pipe after an oom We really need to flush the ring to ensure that we push something on the release ring. If we don't do this and the ring is not pushed for other reasons we will timeout in the guest driver waiting for the ring. --- server/red_worker.c | 1 + 1 file changed, 1 insertion(+) diff --git a/server/red_worker.c b/server/red_worker.c index eb56aa42..ef1c998a 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -9951,6 +9951,7 @@ static void handle_dev_input(EventListener *listener, uint32_t events) red_printf("oom current %u pipe %u", worker->current_size, worker->display_channel ? worker->display_channel->base.pipe_size : 0); red_free_some(worker); + worker->qxl->st->qif->flush_resources(worker->qxl); } clear_bit(RED_WORKER_PENDING_OOM, worker->pending); break;