All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Yiwei Zhang <zzyiwei@gmail.com>
Cc: qemu-devel@nongnu.org,  qemu-stable@nongnu.org,
	 Dmitry Osipenko <dmitry.osipenko@collabora.com>,
	 "Michael S. Tsirkin" <mst@redhat.com>,
	Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
Subject: Re: [PULL 12/17] virtio-gpu: support context init multiple timeline
Date: Fri, 20 Jun 2025 07:45:04 +0100	[thread overview]
Message-ID: <877c16ud1r.fsf@draig.linaro.org> (raw)
In-Reply-To: <CAJ+hS_jUtitaeqYYxHN6q9ijqBu=Zyviid+EJc2sJ1yQLRxSDQ@mail.gmail.com> (Yiwei Zhang's message of "Thu, 19 Jun 2025 19:07:39 -0700")

Yiwei Zhang <zzyiwei@gmail.com> writes:

> On Sun, Jun 8, 2025 at 1:24 AM Akihiko Odaki
> <odaki@rsg.ci.i.u-tokyo.ac.jp> wrote:
>>
>> On 2025/06/06 1:26, Alex Bennée wrote:
>> > From: Yiwei Zhang <zzyiwei@gmail.com>
>> >
>> > 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")
>>
>> I suggest moving this in the front of the patch series to ease backporting.
>>
>> I also wonder if "[PULL 11/17] ui/gtk-gl-area: Remove extra draw call in
>> refresh" requires Cc: qemu-stable@nongnu.org. Fixing -display gtk,gl=on
>> for Wayland sounds as important as this patch.
>>
>> Regards,
>> Akihiko Odaki
>
> Hi Alex,
>
> +1 for Akihiko's point. I'm also curious when will the venus fix land
> in-tree?

We have a problem that there are two contradictory bugs - one that shows
up in the x86/kvm case and one in the aarch64/tcg case. Both are caused
by the weird lifetime semantics of the virgl resource vs QEMU memory
region and we haven't found a solution that solves both yet.

I'm currently busy with other stuff and need to do a sweep of my other
maintainer trees for 10.1. Once I've done that I'll have another go at
coming up with a solution unless someone else beats me to it.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro


  reply	other threads:[~2025-06-20  6:46 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-05 16:26 [PULL 00/17] maintainer updates for May (testing, plugins, virtio-gpu) Alex Bennée
2025-06-05 16:26 ` [PULL 01/17] tests/docker: expose $HOME/.cache/qemu as docker volume Alex Bennée
2025-06-05 16:26 ` [PULL 02/17] gitlab: disable debug info on CI builds Alex Bennée
2025-06-05 16:26 ` [PULL 03/17] tests/tcg: make aarch64 boot.S handle different starting modes Alex Bennée
2025-06-05 16:26 ` [PULL 04/17] tests/qtest: Avoid unaligned access in IGB test Alex Bennée
2025-06-06  9:29   ` Akihiko Odaki
2025-06-05 16:26 ` [PULL 05/17] contrib/plugins: add a scaling factor to the ips arg Alex Bennée
2025-06-05 16:26 ` [PULL 06/17] contrib/plugins: allow setting of instructions per quantum Alex Bennée
2025-06-05 16:26 ` [PULL 07/17] MAINTAINERS: add myself to virtio-gpu for Odd Fixes Alex Bennée
2025-06-05 16:26 ` [PULL 08/17] MAINTAINERS: add Akihiko and Dmitry as reviewers Alex Bennée
2025-06-05 16:26 ` [PULL 09/17] hw/display: re-arrange memory region tracking Alex Bennée
2025-06-06  5:17   ` Akihiko Odaki
2025-06-06  9:54     ` Alex Bennée
2025-06-06 10:31       ` Akihiko Odaki
2025-06-06 11:31         ` Alex Bennée
2025-06-06 15:06           ` Akihiko Odaki
2025-06-05 16:26 ` [PULL 10/17] virtio-gpu: refactor async blob unmapping Alex Bennée
2025-06-08  8:16   ` Akihiko Odaki
2025-06-05 16:26 ` [PULL 11/17] ui/gtk-gl-area: Remove extra draw call in refresh Alex Bennée
2025-06-05 16:26 ` [PULL 12/17] virtio-gpu: support context init multiple timeline Alex Bennée
2025-06-08  8:23   ` Akihiko Odaki
2025-06-20  2:07     ` Yiwei Zhang
2025-06-20  6:45       ` Alex Bennée [this message]
2025-06-20 19:47         ` Yiwei Zhang
2025-06-21  5:59           ` Akihiko Odaki
2025-06-05 16:26 ` [PULL 13/17] include/exec: fix assert in size_memop Alex Bennée
2025-06-08  8:29   ` Akihiko Odaki
2025-06-05 16:26 ` [PULL 14/17] include/gdbstub: fix include guard in commands.h Alex Bennée
2025-06-05 16:26 ` [PULL 15/17] gdbstub: assert earlier in handle_read_all_regs Alex Bennée
2025-06-05 16:26 ` [PULL 16/17] gdbstub: Implement qGDBServerVersion packet Alex Bennée
2025-06-05 16:26 ` [PULL 17/17] gdbstub: update aarch64-core.xml Alex Bennée
2025-06-06 13:45 ` [PULL 00/17] maintainer updates for May (testing, plugins, virtio-gpu) Stefan Hajnoczi
2025-06-07 15:44   ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877c16ud1r.fsf@draig.linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=dmitry.osipenko@collabora.com \
    --cc=mst@redhat.com \
    --cc=odaki@rsg.ci.i.u-tokyo.ac.jp \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-stable@nongnu.org \
    --cc=zzyiwei@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.