summaryrefslogtreecommitdiffstats
path: root/server/red_worker.h
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2011-07-07 17:25:19 +0200
committerAlon Levy <alevy@redhat.com>2011-07-21 15:09:29 +0300
commit32d2817ef0c7f1dba4e4c012d3b7580b55e6b3be (patch)
treedb5ec43d530bec3afe5d39b8a4c98a0a06bd32eb /server/red_worker.h
parentc72dc24756e57c283bf3d03e5b795c49022f901e (diff)
downloadspice-32d2817ef0c7f1dba4e4c012d3b7580b55e6b3be.tar.gz
spice-32d2817ef0c7f1dba4e4c012d3b7580b55e6b3be.tar.xz
spice-32d2817ef0c7f1dba4e4c012d3b7580b55e6b3be.zip
server: add QXLWorker.flush_surfaces_async for S3/S4 support
This does the following, all to remove any referenced memory on the pci bars: flush_all_qxl_commands(worker); flush_all_surfaces(worker); red_wait_outgoing_item((RedChannel *)worker->display_channel); red_wait_outgoing_item((RedChannel *)worker->cursor_channel); The added api is specifically async, i.e. it calls async_complete when done. (cherry picked from commit 2a4d97fb780cf3ce2d9060751d0bec2fdc9800a9)
Diffstat (limited to 'server/red_worker.h')
-rw-r--r--server/red_worker.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/server/red_worker.h b/server/red_worker.h
index 961da939..e65ab19a 100644
--- a/server/red_worker.h
+++ b/server/red_worker.h
@@ -75,6 +75,8 @@ enum {
RED_WORKER_MESSAGE_CREATE_PRIMARY_SURFACE_ASYNC,
RED_WORKER_MESSAGE_DESTROY_PRIMARY_SURFACE_ASYNC,
RED_WORKER_MESSAGE_DESTROY_SURFACE_WAIT_ASYNC,
+ /* suspend/windows resolution change command */
+ RED_WORKER_MESSAGE_FLUSH_SURFACES_ASYNC,
};
typedef uint32_t RedWorkerMessage;