[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 333e75: ui: return NULL when getting cursor w
From: |
Richard Henderson |
Subject: |
[Qemu-commits] [qemu/qemu] 333e75: ui: return NULL when getting cursor without a console |
Date: |
Wed, 28 Jun 2023 02:22:17 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 333e7599a0d723801235f675719008ce43db93e3
https://github.com/qemu/qemu/commit/333e7599a0d723801235f675719008ce43db93e3
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/console.c
Log Message:
-----------
ui: return NULL when getting cursor without a console
VNC may try to get the current cursor even when there are no consoles
and crashes. Simple reproducer is qemu with -nodefaults.
Fixes: (again)
https://gitlab.com/qemu-project/qemu/-/issues/1548
Fixes: commit 385ac97f8 ("ui: keep current cursor with QemuConsole")
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230428154807.2143652-1-marcandre.lureau@redhat.com>
Commit: 72cbcead969de5b34709ac706a3881636010b6f7
https://github.com/qemu/qemu/commit/72cbcead969de5b34709ac706a3881636010b6f7
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/egl-helpers.c
Log Message:
-----------
egl: no need to lookup EGL functions manually
libepoxy handles loading the function pointer and dispatching the call,
so you don't have to worry about it.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230515132455.1025608-1-marcandre.lureau@redhat.com>
Commit: 176e3783f2ab1476cdfd18a12bd2cfbe42e6b573
https://github.com/qemu/qemu/commit/176e3783f2ab1476cdfd18a12bd2cfbe42e6b573
Author: Antonio Caggiano <quic_acaggian@quicinc.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/sdl2.c
Log Message:
-----------
ui/sdl2: OpenGL window context
When OpenGL is enabled, create only the OpenGL context, ignoring the SDL
renderer as it is unused anyway.
Signed-off-by: Antonio Caggiano <quic_acaggian@quicinc.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230612091959.2983-1-quic_acaggian@quicinc.com>
Commit: b097b80bc919fca5f45663c20722e57792a093ea
https://github.com/qemu/qemu/commit/b097b80bc919fca5f45663c20722e57792a093ea
Author: Keqian Zhu <zhukeqian1@huawei.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu.c
Log Message:
-----------
virtio-gpu: Optimize 2D resource data transfer
The following points sometimes can reduce much data
to copy:
1. When width matches, we can transfer data with one
call of iov_to_buf().
2. Only the required height need to transfer, not
whole image.
Signed-off-by: Keqian Zhu <zhukeqian1@huawei.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230612021358.25068-1-zhukeqian1@huawei.com>
Commit: 1e0c544673f43cb7ed97020cb9b3b1a915811bac
https://github.com/qemu/qemu/commit/1e0c544673f43cb7ed97020cb9b3b1a915811bac
Author: Zhang Huasen <huasenzhang@foxmail.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M chardev/char-win-stdio.c
Log Message:
-----------
chardev/char-win-stdio: Support VT sequences on Windows 11 host
If the monitor or the serial port use STDIO as backend on Windows 11 host,
e.g. -nographic options is used, the monitor or the guest Linux do not
response to arrow keys.
When Windows creates a console, ENABLE_VIRTUAL_PROCESS_INPUT is disabled
by default. Arrow keys cannot be retrieved by ReadFile or ReadConsoleInput
functions.
Add ENABLE_VIRTUAL_PROCESS_INPUT to the flag which is passed to SetConsoleMode,
when opening stdio console.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1674
Signed-off-by: Zhang Huasen <huasenzhang@foxmail.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <tencent_8DA57B405D427A560FD40F8FB0C0B1ADDE09@qq.com>
Commit: b6596785987d0174d6f413b7a5b695de6aa14483
https://github.com/qemu/qemu/commit/b6596785987d0174d6f413b7a5b695de6aa14483
Author: Bilal Elmoussaoui <belmouss@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/ui/console.h
M ui/console.c
M ui/gtk.c
Log Message:
-----------
ui/touch: Move event handling to a common helper
To share code between the GTK and DBus UI bakcends
see the next commit for details
Signed-off-by: Bilal Elmoussaoui <belmouss@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230619095337.9899-2-belmouss@redhat.com>
Commit: de9f844ce27ef8540bb9e8b4dd2c159b676d78a5
https://github.com/qemu/qemu/commit/de9f844ce27ef8540bb9e8b4dd2c159b676d78a5
Author: Bilal Elmoussaoui <belmouss@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-console.c
M ui/dbus-display1.xml
M ui/trace-events
Log Message:
-----------
ui/dbus: Expose a touch device interface
So that clients making use of the DBus backend could
send touch events through the new org.qemu.Display1.Touch
interface
Signed-off-by: Bilal Elmoussaoui <belmouss@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230619095337.9899-3-belmouss@redhat.com>
Commit: 34e29d85a7734802317c4cac9ad52b10d461c1dc
https://github.com/qemu/qemu/commit/34e29d85a7734802317c4cac9ad52b10d461c1dc
Author: Vivek Kasireddy <vivek.kasireddy@intel.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu.c
Log Message:
-----------
virtio-gpu: Make non-gl display updates work again when blob=true
In the case where the console does not have gl capability, and
if blob is set to true, make sure that the display updates still
work. Commit e86a93f55463 accidentally broke this by misplacing
the return statement (in resource_flush) causing the updates to
be silently ignored.
Fixes: e86a93f55463 ("virtio-gpu: splitting one extended mode guest fb into
n-scanouts")
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Dongwon Kim <dongwon.kim@intel.com>
Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230623060454.3749910-1-vivek.kasireddy@intel.com>
Commit: ec4d71e8f21c90033cb3c77101a434cb9ea708e9
https://github.com/qemu/qemu/commit/ec4d71e8f21c90033cb3c77101a434cb9ea708e9
Author: Dongwon Kim <dongwon.kim@intel.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu-udmabuf.c
Log Message:
-----------
virtio-gpu-udmabuf: create udmabuf for blob even when iov_cnt == 1
There were often cases where a scanout blob sometimes has just 1 entry
that is linked to many pages in it. So just checking whether iov_cnt is 1
is not enough for screening small, non-scanout blobs. Therefore adding
iov_len check as well to make sure it creates an udmabuf only for a scanout
blob, which is at least bigger than one page size.
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230621222704.29932-1-dongwon.kim@intel.com>
Commit: 37802a24eb4e535d96d6fe0273505d2b5c6528c2
https://github.com/qemu/qemu/commit/37802a24eb4e535d96d6fe0273505d2b5c6528c2
Author: Dongwon Kim <dongwon.kim@intel.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/gtk-egl.c
M ui/gtk-gl-area.c
Log Message:
-----------
ui/gtk: set the area of the scanout texture correctly
x and y offsets and width and height of the scanout texture
is not correctly configured in case guest scanout frame is
dmabuf.
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Message-ID: <20230621213150.29573-1-dongwon.kim@intel.com>
Commit: 7b41ca8d913cdd91d33d74d906dd5d7bd9f41045
https://github.com/qemu/qemu/commit/7b41ca8d913cdd91d33d74d906dd5d7bd9f41045
Author: Dongwon Kim <dongwon.kim@intel.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu.c
Log Message:
-----------
virtio-gpu: OUT_OF_MEMORY if failing to create udmabuf
Respond with VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY if it fails to create
an udmabuf for the blob resource.
v2: consolidated return statments and removed an unnecessary style change
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230627003453.5321-1-dongwon.kim@intel.com>
Commit: 2fc280734a6e7ab9263114214f06b6e69e54fabe
https://github.com/qemu/qemu/commit/2fc280734a6e7ab9263114214f06b6e69e54fabe
Author: Dongwon Kim <dongwon.kim@intel.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/gtk.c
Log Message:
-----------
ui/gtk: making dmabuf NULL when it's released.
Set vc->gfx.guest_fb.dmabuf to NULL to prevent any further access
to it after the dmabuf is released.
v2: move declaration of vc inside ifdef
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20230627005316.5627-1-dongwon.kim@intel.com>
Commit: 044ca4bf45b5bc232a2d699a9e63f359b1b85df6
https://github.com/qemu/qemu/commit/044ca4bf45b5bc232a2d699a9e63f359b1b85df6
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/ui/egl-helpers.h
M ui/egl-helpers.c
Log Message:
-----------
ui/egl: export qemu_egl_get_error_string()
It will be used from other units.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-2-marcandre.lureau@redhat.com>
Commit: 1d48c9fd8e4ab55662d8daec4af1d63cd2b54699
https://github.com/qemu/qemu/commit/1d48c9fd8e4ab55662d8daec4af1d63cd2b54699
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/egl-context.c
M ui/gtk-egl.c
Log Message:
-----------
ui/egl: fix make_context_current() callback return value
eglMakeCurrent() returns 1/EGL_TRUE on success. This is not what the
callback expects, where 0 indicates success.
While at it, print the EGL error to ease debugging.
As with virgl_renderer_callbacks, the return value is now checked since
version >= 4:
https://gitlab.freedesktop.org/virgl/virglrenderer/-/commit/7f09e6bf0c6ceea6727bd0049781256a28cab0e5
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-3-marcandre.lureau@redhat.com>
Commit: 29c5c7e5f65977a77eddf6580fdc31ea4a263a6a
https://github.com/qemu/qemu/commit/29c5c7e5f65977a77eddf6580fdc31ea4a263a6a
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M audio/dbusaudio.c
M ui/dbus-chardev.c
M ui/dbus-console.c
M ui/dbus-listener.c
Log Message:
-----------
ui/dbus: compile without gio/gunixfdlist.h
D-Bus on windows doesn't support fd-passing. Let's isolate the
fdlist-related code as a first step, before adding Windows support,
using another mechanism.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-4-marcandre.lureau@redhat.com>
Commit: 9b286e76c858bb015c70261cc85f34952ba1d155
https://github.com/qemu/qemu/commit/9b286e76c858bb015c70261cc85f34952ba1d155
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M MAINTAINERS
M scripts/meson.build
A scripts/xml-preprocess-test.py
A scripts/xml-preprocess.py
Log Message:
-----------
scripts: add a XML preprocessor script
gdbus-codegen doesn't support conditions or pre-processing.
Rather than duplicating D-Bus interfaces for win32 adaptation, let's
have a preprocess step, so we can have platform-specific interfaces.
The python script is based on
https://github.com/peitaosu/XML-Preprocessor, with bug fixes, some
testing and replacing lxml dependency with the built-in xml module.
This preprocessing syntax style is not very common, but is similar to
the one provided by WiX (https://wixtoolset.org/docs/v3/overview/preprocessor/)
or wixl, that we adopted in QEMU for packaging the guest agent.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-5-marcandre.lureau@redhat.com>
Commit: 6cc5a6159a0067fefbe0b7912c187018aa4b460a
https://github.com/qemu/qemu/commit/6cc5a6159a0067fefbe0b7912c187018aa4b460a
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M audio/dbusaudio.c
M meson.build
M ui/dbus-chardev.c
M ui/dbus-console.c
M ui/dbus-display1.xml
M ui/dbus.h
M ui/meson.build
Log Message:
-----------
ui/dbus: win32 support
D-Bus doesn't support fd-passing on Windows (AF_UNIX doesn't have
SCM_RIGHTS yet, but there are other means to share objects. I have
proposed various solutions upstream, but none seem fitting enough atm).
To make the "-display dbus" work on Windows, implement an alternative
D-Bus interface where all the 'h' (FDs) arguments are replaced with
'ay' (WSASocketW data), and sockets are passed to the other end via
WSADuplicateSocket().
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-6-marcandre.lureau@redhat.com>
Commit: ed097649b55065b3b7da0ca54596e876b29c2561
https://github.com/qemu/qemu/commit/ed097649b55065b3b7da0ca54596e876b29c2561
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M tests/qtest/libqtest.c
M tests/qtest/libqtest.h
Log Message:
-----------
qtest: add qtest_pid()
Used in the following test on win32, to share sockets with the QEMU
process.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230606115658.677673-7-marcandre.lureau@redhat.com>
Commit: 306d75815c57c8449bed8d0964b97c3f1acf2134
https://github.com/qemu/qemu/commit/306d75815c57c8449bed8d0964b97c3f1acf2134
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M tests/qtest/dbus-display-test.c
M tests/qtest/meson.build
Log Message:
-----------
tests: make dbus-display-test work on win32
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Acked-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230606115658.677673-8-marcandre.lureau@redhat.com>
Commit: 439e0164cd83bf50095e6f66bb036b43a65a68b6
https://github.com/qemu/qemu/commit/439e0164cd83bf50095e6f66bb036b43a65a68b6
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-console.c
M ui/dbus-display1.xml
Log Message:
-----------
ui/dbus: introduce "Interfaces" properties
This property is similar to ``org.freedesktop.DBus.Interfaces`` property
on the bus interface: it's an array of strings listing the extra
interfaces and capabilities available, in a convenient way.
Most interfaces are implicit, as they are required. For
``org/qemu/Display1_$id``, we can list the Keyboard And Mouse
interfaces. Those could be optional.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-9-marcandre.lureau@redhat.com>
Commit: 09b4c198b80c3f5c9c051bc8d8935668cdd206e5
https://github.com/qemu/qemu/commit/09b4c198b80c3f5c9c051bc8d8935668cdd206e5
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/sysemu/os-win32.h
M include/ui/console.h
M ui/console.c
M ui/qemu-pixman.c
M ui/trace-events
M util/oslib-win32.c
M util/trace-events
Log Message:
-----------
console/win32: allocate shareable display surface
Introduce qemu_win32_map_alloc() and qemu_win32_map_free() to allocate
shared memory mapping. The handle can be used to share the mapping with
another process.
Teach qemu_create_displaysurface() to allocate shared memory. Following
patches will introduce other places for shared memory allocation.
Other patches for -display dbus will share the memory when possible with
the client, to avoid expensive memory copy between the processes.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-10-marcandre.lureau@redhat.com>
Commit: 9462ff4695aa0d086fd63f7f2efafe5a05f2a243
https://github.com/qemu/qemu/commit/9462ff4695aa0d086fd63f7f2efafe5a05f2a243
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu.c
M include/hw/virtio/virtio-gpu.h
Log Message:
-----------
virtio-gpu/win32: allocate shareable 2d resources/images
Allocate pixman bits for scanouts with qemu_win32_map_alloc() so we can
set a shareable handle on the associated display surface.
Note: when bits are provided to pixman_image_create_bits(), you must also give
the rowstride (the argument is ignored when bits is NULL)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-11-marcandre.lureau@redhat.com>
Commit: 48dddba1763b2134e81ae6765b19184fd907f142
https://github.com/qemu/qemu/commit/48dddba1763b2134e81ae6765b19184fd907f142
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-display1.xml
M ui/dbus-listener.c
Log Message:
-----------
ui/dbus: use shared memory when possible on win32
When the display surface has an associated HANDLE, we can duplicate it
to the client process and let it map the memory to avoid expensive copies.
Introduce two new win32-specific methods ScanoutMap and UpdateMap. The
first is used to inform the listener about the a shared map
availability, and the second for display updates.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-12-marcandre.lureau@redhat.com>
Commit: 39324b49669c72b00cf3adc93d9dc7cf702bf11f
https://github.com/qemu/qemu/commit/39324b49669c72b00cf3adc93d9dc7cf702bf11f
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/ui/egl-helpers.h
M qapi/ui.json
M ui/egl-headless.c
M ui/egl-helpers.c
M ui/meson.build
Log Message:
-----------
ui: add egl-headless support on win32
Make GBM optional for EGL code, and enable the build for win32.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-13-marcandre.lureau@redhat.com>
Commit: afe8e0b6db2debeaf35f5bd43efa1ada90ba0847
https://github.com/qemu/qemu/commit/afe8e0b6db2debeaf35f5bd43efa1ada90ba0847
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/egl-helpers.c
Log Message:
-----------
ui/egl: default to GLES on windows
Windows GL drivers are notoriously not very good. Otoh, ANGLE provides
rock solid GLES implementation on top of direct3d. We should recommend
it and default to ES when using EGL (users can easily override this if
necessary)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-14-marcandre.lureau@redhat.com>
Commit: da9eb580b7e28d70d344bb03e0fe5703c8d1892c
https://github.com/qemu/qemu/commit/da9eb580b7e28d70d344bb03e0fe5703c8d1892c
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/ui/egl-helpers.h
M ui/egl-helpers.c
Log Message:
-----------
ui: add egl_fb_read_rect()
Similar to egl_fb_read(), same limitations, but with extra arguments to
read a subset of the framebuffer. Used in following commits.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-15-marcandre.lureau@redhat.com>
Commit: f43bf0a73b3903770e2bc919b12f9dad5407773d
https://github.com/qemu/qemu/commit/f43bf0a73b3903770e2bc919b12f9dad5407773d
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-listener.c
M ui/dbus.c
Log Message:
-----------
ui/dbus: add GL support on win32
Enable usage of dbus,gl= on win32. At this point, the scanout texture is
read on the DisplaySurface memory, and the client is then updated with
the "2D" API (with shared memory if possible).
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-16-marcandre.lureau@redhat.com>
Commit: cf283fb44769b0a2de647193bb31d55d5d25595b
https://github.com/qemu/qemu/commit/cf283fb44769b0a2de647193bb31d55d5d25595b
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-listener.c
M ui/trace-events
Log Message:
-----------
ui/dbus: add some GL traces
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-17-marcandre.lureau@redhat.com>
Commit: e8a2db94792ca036adbdf3656125587c3097bd83
https://github.com/qemu/qemu/commit/e8a2db94792ca036adbdf3656125587c3097bd83
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu-virgl.c
Log Message:
-----------
virtio-gpu-virgl: teach it to get the QEMU EGL display
virgl offers a few features that require to have access to the
underlying EGLDisplay. This is the case for the D3D texture sharing support.
The API callback is merged for virgl 1.0:
https://gitlab.freedesktop.org/virgl/virglrenderer/-/merge_requests/1113
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-18-marcandre.lureau@redhat.com>
Commit: 06c63a34e633601caea8fe88abfeff0911809da3
https://github.com/qemu/qemu/commit/06c63a34e633601caea8fe88abfeff0911809da3
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M include/ui/egl-helpers.h
M ui/egl-helpers.c
M ui/trace-events
Log Message:
-----------
ui/egl: query ANGLE d3d device
Check if ANGLE is being used with D3D backend.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-19-marcandre.lureau@redhat.com>
Commit: bf41ab61908b340e5745c334586349bc8a3a0349
https://github.com/qemu/qemu/commit/bf41ab61908b340e5745c334586349bc8a3a0349
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu-virgl.c
M include/ui/console.h
M include/ui/gtk.h
M include/ui/sdl2.h
M ui/console.c
M ui/dbus-console.c
M ui/dbus-listener.c
M ui/egl-headless.c
M ui/gtk-egl.c
M ui/gtk-gl-area.c
M ui/sdl2-gl.c
M ui/spice-display.c
Log Message:
-----------
ui: add optional d3d texture pointer to scanout texture
The following patch will get the underlying D3D11 Texture2D from the
virgl renderer scanout. Pass it along to the texture scanout callbacks
as a priliminary step, to simplify review.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-20-marcandre.lureau@redhat.com>
Commit: c1600f84ce011a056c9c432c8ad8d77f7f8b9e6f
https://github.com/qemu/qemu/commit/c1600f84ce011a056c9c432c8ad8d77f7f8b9e6f
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M hw/display/virtio-gpu-virgl.c
M meson.build
Log Message:
-----------
virtio-gpu-virgl: use D3D11_SHARE_TEXTURE when available
Enable D3D texture sharing when possible, and pass it to the texture
display callbacks.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-21-marcandre.lureau@redhat.com>
Commit: de1f8ce0abb8c43d1e6a00c31c6d24dfe0505b92
https://github.com/qemu/qemu/commit/de1f8ce0abb8c43d1e6a00c31c6d24dfe0505b92
Author: Marc-André Lureau <marcandre.lureau@redhat.com>
Date: 2023-06-27 (Tue, 27 Jun 2023)
Changed paths:
M ui/dbus-display1.xml
M ui/dbus-listener.c
Log Message:
-----------
ui/dbus: use shared D3D11 Texture2D when possible
When the client implements "org.qemu.Display1.Listener.Win32.D3d11" and
we are running on ANGLE/win32, share the scanout texture with the peer
process, and draw with ScanoutTexture2d/UpdateTexture2d methods.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20230606115658.677673-22-marcandre.lureau@redhat.com>
Commit: b111569da9f82fdf05df03184836a4564adef599
https://github.com/qemu/qemu/commit/b111569da9f82fdf05df03184836a4564adef599
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2023-06-28 (Wed, 28 Jun 2023)
Changed paths:
M MAINTAINERS
M audio/dbusaudio.c
M chardev/char-win-stdio.c
M hw/display/virtio-gpu-udmabuf.c
M hw/display/virtio-gpu-virgl.c
M hw/display/virtio-gpu.c
M include/hw/virtio/virtio-gpu.h
M include/sysemu/os-win32.h
M include/ui/console.h
M include/ui/egl-helpers.h
M include/ui/gtk.h
M include/ui/sdl2.h
M meson.build
M qapi/ui.json
M scripts/meson.build
A scripts/xml-preprocess-test.py
A scripts/xml-preprocess.py
M tests/qtest/dbus-display-test.c
M tests/qtest/libqtest.c
M tests/qtest/libqtest.h
M tests/qtest/meson.build
M ui/console.c
M ui/dbus-chardev.c
M ui/dbus-console.c
M ui/dbus-display1.xml
M ui/dbus-listener.c
M ui/dbus.c
M ui/dbus.h
M ui/egl-context.c
M ui/egl-headless.c
M ui/egl-helpers.c
M ui/gtk-egl.c
M ui/gtk-gl-area.c
M ui/gtk.c
M ui/meson.build
M ui/qemu-pixman.c
M ui/sdl2-gl.c
M ui/sdl2.c
M ui/spice-display.c
M ui/trace-events
M util/oslib-win32.c
M util/trace-events
Log Message:
-----------
Merge tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu into
staging
wef
# -----BEGIN PGP SIGNATURE-----
#
# iQJQBAABCAA6FiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmSa+6McHG1hcmNhbmRy
# ZS5sdXJlYXVAcmVkaGF0LmNvbQAKCRDa6OEJdZac5YxfD/46nwpTCTWWdKdTeo5p
# OUdrF0rfHFqu4FN3OWHbfRxZCO/AdHL+UZ52owV4+5bJJI5uOnXwYKpkrwKYBrFd
# H8Bll7NitzA41rw4AQa0GeaQYCPJ99OOfnhbRI5Aep2NG2DfX5PK4RWnfqYw8LD1
# TiHtRv2lWnX9EyMjnEh93C+n17OfquP5Ew3ozZNQJ0+SiJ3CvsUn6hEqxOA8OdyX
# lj6l00CASQA2BxW+zjXjJKvRakCV4gfdvrL9eMf4eu0UopzET7ombBJGPnYVsrDU
# /4R7b0JgGM4iOpXFxK4Ng6myP28vPdOEJAU/OJLH+oMRz1caohS+0Ijl2KviUCex
# SGpb9plxqI7fI2QQt+1CxAlXADSW7oV1zV0/tLkKl/n5+MF3HJ/5qR3tefLhYu1p
# 2LpfbPMKGQ9V3+5Z/UvWx6GQYP1iBRm5THPLn+HSDMSqLmt6yp5cOTwP3KTx1Zlc
# JfpBtekT2Cgs54nnCcfnXa6/EPo4uR7cMFzrgXdSacPz/GssMVa1c2mNUYkgYEYU
# PeyDWZG2Rt/70y+CFDPBpKWEQVICnf7Ha43oj4BtGTqqUFeuZClMTTtZ5poSg3ir
# FcRNJ5zSWg2KhHIQ9TQKxIAwrxxVBY0AiQleNRyDzx+YGAuBBadO6i5eCqqpGgOa
# QRVBsP33Pg/QD1JdxN9GSSEh0w==
# =cR6x
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 27 Jun 2023 05:09:23 PM CEST
# gpg: using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg: issuer "marcandre.lureau@redhat.com"
# gpg: Good signature from "Marc-André Lureau <marcandre.lureau@redhat.com>"
[full]
# gpg: aka "Marc-André Lureau <marcandre.lureau@gmail.com>"
[full]
* tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu: (33
commits)
ui/dbus: use shared D3D11 Texture2D when possible
virtio-gpu-virgl: use D3D11_SHARE_TEXTURE when available
ui: add optional d3d texture pointer to scanout texture
ui/egl: query ANGLE d3d device
virtio-gpu-virgl: teach it to get the QEMU EGL display
ui/dbus: add some GL traces
ui/dbus: add GL support on win32
ui: add egl_fb_read_rect()
ui/egl: default to GLES on windows
ui: add egl-headless support on win32
ui/dbus: use shared memory when possible on win32
virtio-gpu/win32: allocate shareable 2d resources/images
console/win32: allocate shareable display surface
ui/dbus: introduce "Interfaces" properties
tests: make dbus-display-test work on win32
qtest: add qtest_pid()
ui/dbus: win32 support
scripts: add a XML preprocessor script
ui/dbus: compile without gio/gunixfdlist.h
ui/egl: fix make_context_current() callback return value
...
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Compare: https://github.com/qemu/qemu/compare/4329d049d5b8...b111569da9f8