diff options
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.toml | 35 |
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)""" |