aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2019-12-05 09:36:00 +0100
committerGerd Hoffmann <kraxel@redhat.com>2019-12-18 10:24:08 +0100
commit73e06934a5010b6a86c45b3419ac17cfe8675d72 (patch)
treef97313a7210e5e47b2010e1e6e867e54bc130b48
parent5d28b364bb50eadd1f223087f6214337d7ea09d2 (diff)
downloadvirtio-spec-gpu-wip.tar.gz
VIRTIO_GPU_RESP_ERR_RESOURCE_BUSY - shared [fixup]gpu-wip
-rw-r--r--virtio-gpu.tex11
1 files changed, 10 insertions, 1 deletions
diff --git a/virtio-gpu.tex b/virtio-gpu.tex
index 4c35d77..9dca801 100644
--- a/virtio-gpu.tex
+++ b/virtio-gpu.tex
@@ -182,7 +182,15 @@ copies needed.
The driver MUST attach backing storage to a shared resource before
using it. Any changes on the shared resource MAY be instantly visible
-on the host.
+on the host. The driver MUST NOT detach backing storage while the
+resource is busy, specifically while it is used by a scanout. The
+device MAY respond with VIRTIO_GPU_RESP_ERR_RESOURCE_BUSY in case the
+driver submits an illegal VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING
+command.
+
+The device MUST make sure it stopped using all backing storage pages
+before completing a VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING command for
+a shared resource.
Otherwise the shared resources are used like normal resources.
Especially the driver must send explicit VIRTIO_GPU_CMD_TRANSFER_*
@@ -244,6 +252,7 @@ enum virtio_gpu_ctrl_type {
VIRTIO_GPU_RESP_ERR_INVALID_CONTEXT_ID,
VIRTIO_GPU_RESP_ERR_INVALID_PARAMETER,
VIRTIO_GPU_RESP_ERR_NO_BACKING_STORAGE,
+ VIRTIO_GPU_RESP_ERR_RESOURCE_BUSY,
};
#define VIRTIO_GPU_FLAG_FENCE (1 << 0)