From: Dmitry Osipenko <dmitry.osipenko@collabora.com>
To: "Akihiko Odaki" <akihiko.odaki@daynix.com>,
"Huang Rui" <ray.huang@amd.com>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Pierre-Eric Pelloux-Prayer" <pierre-eric.pelloux-prayer@amd.com>,
"Michael S . Tsirkin" <mst@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>
Cc: "Gert Wollny" <gert.wollny@collabora.com>,
qemu-devel@nongnu.org,
"Gurchetan Singh" <gurchetansingh@chromium.org>,
"Alyssa Ross" <hi@alyssa.is>,
"Roger Pau Monné" <roger.pau@citrix.com>,
"Alex Deucher" <alexander.deucher@amd.com>,
"Stefano Stabellini" <stefano.stabellini@amd.com>,
"Christian König" <christian.koenig@amd.com>,
"Xenia Ragiadakou" <xenia.ragiadakou@amd.com>,
"Honglei Huang" <honglei1.huang@amd.com>,
"Julia Zhang" <julia.zhang@amd.com>,
"Chen Jiqian" <Jiqian.Chen@amd.com>,
"Rob Clark" <robdclark@gmail.com>,
"Yiwei Zhang" <zzyiwei@chromium.org>,
"Sergio Lopez Pascual" <slp@redhat.com>
Subject: [PATCH v8 01/10] ui/sdl2: Restore original context after new context creation
Date: Sun, 9 Feb 2025 19:56:40 +0300 [thread overview]
Message-ID: <20250209165649.544005-2-dmitry.osipenko@collabora.com> (raw)
In-Reply-To: <20250209165649.544005-1-dmitry.osipenko@collabora.com>
SDL API changes GL context to a newly created GL context, which differs
from other GL providers that don't switch context. Change SDL backend to
restore the original GL context. This allows Qemu's virtio-gpu to support
new virglrenderer async-fencing feature for Virgl contexts, otherwise
virglrenderer's vrend creates a fence-sync context on the Qemu's
main-loop thread that erroneously stays in-use by the main-loop after
creation, not allowing vrend's fence-sync thread switch to this new
context that belongs to it.
Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
---
ui/sdl2-gl.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/ui/sdl2-gl.c b/ui/sdl2-gl.c
index e01d9ab0c7bf..b1fe96d6af22 100644
--- a/ui/sdl2-gl.c
+++ b/ui/sdl2-gl.c
@@ -168,6 +168,9 @@ QEMUGLContext sdl2_gl_create_context(DisplayGLCtx *dgc,
SDL_GL_CONTEXT_PROFILE_ES);
ctx = SDL_GL_CreateContext(scon->real_window);
}
+
+ SDL_GL_MakeCurrent(scon->real_window, scon->winctx);
+
return (QEMUGLContext)ctx;
}
--
2.47.1
next prev parent reply other threads:[~2025-02-09 17:00 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-09 16:56 [PATCH v8 00/10] Support virtio-gpu DRM native context Dmitry Osipenko
2025-02-09 16:56 ` Dmitry Osipenko [this message]
2025-02-09 16:56 ` [PATCH v8 02/10] ui/sdl2: Implement dpy dmabuf functions Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 03/10] virtio-gpu: Handle virgl fence creation errors Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 04/10] virtio-gpu: Support asynchronous fencing Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 05/10] virtio-gpu: Support DRM native context Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 06/10] ui/sdl2: Don't disable scanout when display is refreshed Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 07/10] ui/gtk: " Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 08/10] docs/system: virtio-gpu: Add link to Mesa VirGL doc Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 09/10] docs/system: virtio-gpu: Update Venus link Dmitry Osipenko
2025-02-09 16:56 ` [PATCH v8 10/10] docs/system: virtio-gpu: Document host/guest requirements Dmitry Osipenko
2025-02-13 4:47 ` Akihiko Odaki
2025-02-13 10:18 ` Alex Bennée
2025-02-13 10:30 ` Akihiko Odaki
2025-02-14 16:27 ` Dmitry Osipenko
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=20250209165649.544005-2-dmitry.osipenko@collabora.com \
--to=dmitry.osipenko@collabora.com \
--cc=Jiqian.Chen@amd.com \
--cc=akihiko.odaki@daynix.com \
--cc=alex.bennee@linaro.org \
--cc=alexander.deucher@amd.com \
--cc=christian.koenig@amd.com \
--cc=gert.wollny@collabora.com \
--cc=gurchetansingh@chromium.org \
--cc=hi@alyssa.is \
--cc=honglei1.huang@amd.com \
--cc=julia.zhang@amd.com \
--cc=kraxel@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@linaro.org \
--cc=pierre-eric.pelloux-prayer@amd.com \
--cc=qemu-devel@nongnu.org \
--cc=ray.huang@amd.com \
--cc=robdclark@gmail.com \
--cc=roger.pau@citrix.com \
--cc=slp@redhat.com \
--cc=stefano.stabellini@amd.com \
--cc=xenia.ragiadakou@amd.com \
--cc=zzyiwei@chromium.org \
/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.