aboutsummaryrefslogtreecommitdiff
path: root/scripts/qapi/source.py
diff options
context:
space:
mode:
authorYiwei Zhang <zzyiwei@gmail.com>2025-06-27 12:25:11 +0100
committerAlex Bennée <alex.bennee@linaro.org>2025-07-02 10:10:07 +0100
commit1fa2ffdbec55d84326e22f046bc3e26322836f5a (patch)
treefb73f6dfb168789cc6be47b58d8148e30ed378dc /scripts/qapi/source.py
parent2882dfa57faad19c9f622eea67614b1215c24d8e (diff)
downloadqemu-1fa2ffdbec55d84326e22f046bc3e26322836f5a.zip
qemu-1fa2ffdbec55d84326e22f046bc3e26322836f5a.tar.gz
qemu-1fa2ffdbec55d84326e22f046bc3e26322836f5a.tar.bz2
virtio-gpu: support context init multiple timeline
Venus and later native contexts have their own fence context along with multiple timelines within. Fences wtih VIRTIO_GPU_FLAG_INFO_RING_IDX in the flags must be dispatched to be created on the target context. Fence signaling also has to be handled on the specific timeline within that target context. Before this change, venus fencing is completely broken if the host driver doesn't support implicit fencing with external memory objects. Frames can go backwards along with random artifacts on screen if the host driver doesn't attach an implicit fence to the render target. The symptom could be hidden by certain guest wsi backend that waits on a venus native VkFence object for the actual payload with limited present modes or under special configs. e.g. x11 mailbox or xwayland. After this change, everything related to venus fencing starts making sense. Confirmed this via guest and host side perfetto tracing. Cc: qemu-stable@nongnu.org Fixes: 94d0ea1c1928 ("virtio-gpu: Support Venus context") Signed-off-by: Yiwei Zhang <zzyiwei@gmail.com> Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> Message-Id: <20250518152651.334115-1-zzyiwei@gmail.com> [AJB: remove version history from commit message] Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp> Message-ID: <20250627112512.1880708-16-alex.bennee@linaro.org>
Diffstat (limited to 'scripts/qapi/source.py')
0 files changed, 0 insertions, 0 deletions