diff options
Diffstat (limited to 'virtio-gpu.tex')
-rw-r--r-- | virtio-gpu.tex | 11 |
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) |