[Spice-devel] [RfC spice-protocol PATCH] Add async I/O commands.

Gerd Hoffmann kraxel at redhat.com
Wed Jun 22 01:46:18 PDT 2011


Add async versions of the I/O commands which do not block and instead
raise the new QXL_INTERRUPT_IO_CMD when done.

Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
---
 spice/qxl_dev.h |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/spice/qxl_dev.h b/spice/qxl_dev.h
index e3e0696..57d00ed 100644
--- a/spice/qxl_dev.h
+++ b/spice/qxl_dev.h
@@ -80,6 +80,14 @@ enum {
     QXL_IO_DESTROY_PRIMARY,
     QXL_IO_DESTROY_SURFACE_WAIT,
     QXL_IO_DESTROY_ALL_SURFACES,
+    /* appended for qxl-3 */
+    QXL_IO_UPDATE_AREA_ASYNC,
+    QXL_IO_NOTIFY_OOM_ASYNC,
+    QXL_IO_MEMSLOT_ADD_ASYNC,
+    QXL_IO_CREATE_PRIMARY_ASYNC,
+    QXL_IO_DESTROY_PRIMARY_ASYNC,
+    QXL_IO_DESTROY_SURFACE_ASYNC,
+    QXL_IO_DESTROY_ALL_SURFACES_ASYNC,
 
     QXL_IO_RANGE_SIZE
 };
@@ -213,6 +221,7 @@ SPICE_RING_DECLARE(QXLReleaseRing, uint64_t, QXL_RELEASE_RING_SIZE);
 
 #define QXL_INTERRUPT_DISPLAY (1 << 0)
 #define QXL_INTERRUPT_CURSOR (1 << 1)
+#define QXL_INTERRUPT_IO_CMD (1 << 2)
 
 /* qxl-1 compat: append only */
 typedef struct SPICE_ATTR_PACKED QXLRam {
-- 
1.7.1



More information about the Spice-devel mailing list