summary refs log tree commit diff stats
path: root/gitlab/issues/target_missing/host_missing/accel_missing/1794.toml
diff options
context:
space:
mode:
Diffstat (limited to 'gitlab/issues/target_missing/host_missing/accel_missing/1794.toml')
-rw-r--r--gitlab/issues/target_missing/host_missing/accel_missing/1794.toml35
1 files changed, 35 insertions, 0 deletions
diff --git a/gitlab/issues/target_missing/host_missing/accel_missing/1794.toml b/gitlab/issues/target_missing/host_missing/accel_missing/1794.toml
new file mode 100644
index 00000000..6c10de34
--- /dev/null
+++ b/gitlab/issues/target_missing/host_missing/accel_missing/1794.toml
@@ -0,0 +1,35 @@
+id = 1794
+title = "Virtio-GPU doesn't fill Response data for cursor queue"
+state = "opened"
+created_at = "2023-07-27T10:48:02.241Z"
+closed_at = "n/a"
+labels = ["device:graphics", "device:virtio"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/1794"
+host-os = "Windows 10 22H2"
+host-arch = "x86"
+qemu-version = "v8.0.2-12029-g9136b8d217"
+guest-os = "None"
+guest-arch = "i386"
+description = """Implementation of virtio-gpu in Qemu is likely not fill Response header in cursor commands.
+
+Inside the virtio 1.2 specification, document said:
+```
+VIRTIO_GPU_CMD_UPDATE_CURSOR
+    Update cursor. Request data is struct virtio_gpu_update_cursor. Response type is VIRTIO_GPU_RESP_OK_NODATA.
+    Full cursor update. Cursor will be loaded from the specified resource_id and will be moved to pos. The driver must 
+    transfer the cursor into the resource beforehand (using control queue commands) and make sure the commands to fill 
+    the resource are actually processed (using fencing).
+
+VIRTIO_GPU_CMD_MOVE_CURSOR
+    Move cursor. Request data is struct virtio_gpu_update_cursor. Response type is VIRTIO_GPU_RESP_OK_NODATA.
+    Move cursor to the place specified in pos. The other fields are not used and will be ignored by the device.
+```
+The cursor commands do have a response like control commands.
+
+But in [hw/display/virtio-gpu.c#L1136](https://gitlab.com/qemu-project/qemu/-/blob/master/hw/display/virtio-gpu.c#L1136), QEMU doesn't care anything about response, just fetching command and execute.
+
+It this a Implementation compromise or I missing something in the specification?"""
+reproduce = """1. Write any kernel that using virtio-gpu.
+2. Run on qemu.
+3. No response on cursor command."""
+additional = """Specification: [virtio-v1.2-cs01.html](https://docs.oasis-open.org/virtio/virtio/v1.2/cs01/virtio-v1.2-cs01.html#x1-3650007)"""