bc9b8bc9 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/console: call dpy_gfx_update() regardless of have_gfx
The function will handle the case when no listeners are gfx, without extra meaningful cost.
This allows to get rid of DisplayState dependenc
ui/console: call dpy_gfx_update() regardless of have_gfx
The function will handle the case when no listeners are gfx, without extra meaningful cost.
This allows to get rid of DisplayState dependency in VC implementation.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-8-marcandre.lureau@redhat.com>
show more ...
|
074b2409 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/console: console_select() regardless of have_gfx
Even if we don't have a gfx listener, we should call displaychangelistener_display_console() which handle that case correctly.
Signed-off-by: Mar
ui/console: console_select() regardless of have_gfx
Even if we don't have a gfx listener, we should call displaychangelistener_display_console() which handle that case correctly.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-7-marcandre.lureau@redhat.com>
show more ...
|
17742278 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/vc: drop have_text
If there are no "text" listener, the callback will simply be ignored. The rest of text handling can be done cheaply.
This allows to remove some dependency on DisplayState from
ui/vc: drop have_text
If there are no "text" listener, the callback will simply be ignored. The rest of text handling can be done cheaply.
This allows to remove some dependency on DisplayState from VC implementation.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-6-marcandre.lureau@redhat.com>
show more ...
|
f1f7a1e2 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/vc: replace vc_chr_write() with generic qemu_chr_write()
We shouldn't call the callback directly, but use the chardev API, unless there is a clear reason.
Signed-off-by: Marc-André Lureau <marca
ui/vc: replace vc_chr_write() with generic qemu_chr_write()
We shouldn't call the callback directly, but use the chardev API, unless there is a clear reason.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230830093843.3531473-5-marcandre.lureau@redhat.com>
show more ...
|
4f2c765b | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/qmp: move screendump to ui-qmp-cmds.c
console.c unit is over-crowded. This code is specific to the handling of the QMP screendump command, so move it in ui-qmp-cmds.
Signed-off-by: Marc-André Lu
ui/qmp: move screendump to ui-qmp-cmds.c
console.c unit is over-crowded. This code is specific to the handling of the QMP screendump command, so move it in ui-qmp-cmds.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-4-marcandre.lureau@redhat.com>
show more ...
|
426749a7 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui: remove qemu_pixman_linebuf_copy()
Since commit 43c7d8bd449 ("console: add qemu_pixman_linebuf_copy"), it seems it was never used.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
ui: remove qemu_pixman_linebuf_copy()
Since commit 43c7d8bd449 ("console: add qemu_pixman_linebuf_copy"), it seems it was never used.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-3-marcandre.lureau@redhat.com>
show more ...
|
90da7d55 | 30-Aug-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui: remove qemu_pixman_color() helper
Usage removed in commit e27bd65a72d ("console: switch color_table_rgb to pixman_color_t")
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Review
ui: remove qemu_pixman_color() helper
Usage removed in commit e27bd65a72d ("console: switch color_table_rgb to pixman_color_t")
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230830093843.3531473-2-marcandre.lureau@redhat.com>
show more ...
|
d4761b65 | 23-Aug-2023 |
Michael Tokarev <mjt@tls.msk.ru> |
ui: spelling fixes
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Message-ID: <20230823065335.1919380-2-mjt@tls.msk.ru> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> |
58ea90f8 | 24-Jul-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
ui/gtk: set scanout mode in gd_egl/gd_gl_area_scanout_texture
Fixing a regression (black screen) caused by a commit 92b58156e7 ("ui/gtk: set scanout-mode right before scheduling draw").
The commit
ui/gtk: set scanout mode in gd_egl/gd_gl_area_scanout_texture
Fixing a regression (black screen) caused by a commit 92b58156e7 ("ui/gtk: set scanout-mode right before scheduling draw").
The commit 92b58156e7 was made with an assumption that the scanout mode needs to be set only if the guest scanout is a dmabuf but there are cases (e.g. virtio-gpu-virgl) where the scanout is still processed in a form of a texture but is not backed by dmabuf. So it is needed to put back the line that sets scanout mode in gd_egl_scanout_texture and gd_gl_area_scanout_texture.
Fixes: 92b58156e7 ("ui/gtk: set scanout-mode right before scheduling draw) Reported-by: Volker Rümelin <vr_qemu@t-online.de> 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: <20230725001131.24017-1-dongwon.kim@intel.com>
show more ...
|
313e1629 | 30-Jul-2023 |
Stefan Weil <sw@weilnetz.de> |
misc: Fix some typos in documentation and comments
Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linar
misc: Fix some typos in documentation and comments
Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230730180329.851576-1-sw@weilnetz.de> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
show more ...
|
7b4a3f81 | 26-Jul-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
ui/dbus: fix clang compilation issue
../ui/dbus-listener.c:236:9: error: expected expression Error *err = NULL;
See: https://gitlab.com/qemu-project/qemu/-/issues/1782#note_1488517427
Sign
ui/dbus: fix clang compilation issue
../ui/dbus-listener.c:236:9: error: expected expression Error *err = NULL;
See: https://gitlab.com/qemu-project/qemu/-/issues/1782#note_1488517427
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20230726151221.515761-1-marcandre.lureau@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
show more ...
|
866b24e4 | 25-Jul-2023 |
Marc-Andre Lureau <marcandre.lureau@redhat.com> |
ui/dbus: fix win32 compilation when !opengl
Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1782
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Philippe Mathieu-Da
ui/dbus: fix win32 compilation when !opengl
Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1782
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230725112540.53284-1-marcandre.lureau@redhat.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
show more ...
|
9b579543 | 25-Jul-2023 |
Sean Estabrooks <sean.estabrooks@gmail.com> |
For curses display, recognize a few more control keys
The curses display handles most control-X keys, and translates them into their corresponding keycode. Here we recognize a few that are missing,
For curses display, recognize a few more control keys
The curses display handles most control-X keys, and translates them into their corresponding keycode. Here we recognize a few that are missing, Ctrl-@ (null), Ctrl-\ (backslash), Ctrl-] (right bracket), Ctrl-^ (caret), Ctrl-_ (underscore).
Signed-off-by: Sean Estabrooks <sean.estabrooks@gmail.com> Message-id: CAHyVn3Bh9CRgDuOmf7G7Ngwamu8d4cVozAcB2i4ymnnggBXNmg@mail.gmail.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
show more ...
|
1be878eb | 06-Jul-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
ui/gtk: skip refresh if new dmabuf has been submitted
Skip refresh if a new dmabuf (guest scanout frame) has already been submitted and ready to be drawn because the scanout will be updated with new
ui/gtk: skip refresh if new dmabuf has been submitted
Skip refresh if a new dmabuf (guest scanout frame) has already been submitted and ready to be drawn because the scanout will be updated with new frame anyway.
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> Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-ID: <20230706183355.29361-2-dongwon.kim@intel.com>
show more ...
|
92b58156 | 06-Jul-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
ui/gtk: set scanout-mode right before scheduling draw
Setting scanout mode is better to be done very last minute right because the mode can be reset anytime after it is set in dpy_gl_scanout_texture
ui/gtk: set scanout-mode right before scheduling draw
Setting scanout mode is better to be done very last minute right because the mode can be reset anytime after it is set in dpy_gl_scanout_texture by any asynchronouse dpy_refresh call, which eventually cancels drawing of the guest scanout texture.
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> Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-ID: <20230706183355.29361-1-dongwon.kim@intel.com>
show more ...
|
9ac06df8 | 12-Jul-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
virtio-gpu-udmabuf: correct naming of QemuDmaBuf size properties
Replace 'width' and 'height' in QemuDmaBuf with 'backing_widht' and 'backing_height' as these commonly indicate the size of the whole
virtio-gpu-udmabuf: correct naming of QemuDmaBuf size properties
Replace 'width' and 'height' in QemuDmaBuf with 'backing_widht' and 'backing_height' as these commonly indicate the size of the whole surface (e.g. guest's Xorg extended display). Then use 'width' and 'height' for sub region in there (e.g. guest's scanouts).
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: <20230713040444.32267-1-dongwon.kim@intel.com>
show more ...
|
0d0be876 | 27-Jun-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
virtio-gpu: replace the surface with null surface when resetting
The primary guest scanout shows the booting screen right after reboot but additional guest displays (i.e. max_ouptuts > 1) will keep
virtio-gpu: replace the surface with null surface when resetting
The primary guest scanout shows the booting screen right after reboot but additional guest displays (i.e. max_ouptuts > 1) will keep displaying the old frames until the guest virtio gpu driver gets initialized, which could cause some confusion. A better way is to to replace the surface with a place holder that tells the display is not active during the reset of virtio-gpu device.
And to immediately update the surface with the place holder image after the switch, displaychangelistener_gfx_switch needs to be called with 'update == TRUE' in dpy_gfx_replace_surface when the new surface is NULL.
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> Acked-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-ID: <20230627224451.11739-1-dongwon.kim@intel.com>
show more ...
|
83b4b236 | 28-Jun-2023 |
Dongwon Kim <dongwon.kim@intel.com> |
ui/gtk: Make sure the right EGL context is currently bound
Observed a wrong context is bound when changing the scanout mode. To prevent problem, it is needed to make sure to bind the right context i
ui/gtk: Make sure the right EGL context is currently bound
Observed a wrong context is bound when changing the scanout mode. To prevent problem, it is needed to make sure to bind the right context in gtk_egl_set_scanout_mode/gtk_gl_area_set_scanout_mode as well as unbind one in the end of gd_egl_update/gd_gl_area_update.
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: <20230628191504.17185-1-dongwon.kim@intel.com>
show more ...
|
d921fea3 | 04-Jul-2023 |
Mauro Matteo Cascella <mcascell@redhat.com> |
ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255)
A wrong exit condition may lead to an infinite loop when inflating a valid zlib buffer containing some extra bytes in the `infla
ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255)
A wrong exit condition may lead to an infinite loop when inflating a valid zlib buffer containing some extra bytes in the `inflate_buffer` function. The bug only occurs post-authentication. Return the buffer immediately if the end of the compressed data has been reached (Z_STREAM_END).
Fixes: CVE-2023-3255 Fixes: 0bf41cab ("ui/vnc: clipboard support") Reported-by: Kevin Denis <kevin.denis@synacktiv.com> Signed-off-by: Mauro Matteo Cascella <mcascell@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Tested-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-ID: <20230704084210.101822-1-mcascell@redhat.com>
show more ...
|
d39a84b7 | 30-Jun-2023 |
Richard Henderson <richard.henderson@linaro.org> |
ui/dbus: fix build errors in dbus_update_gl_cb and dbus_call_update_gl
Add some ifdefs to avoid an unused function and unused variable.
Fixes: de1f8ce0abb8 ("ui/dbus: use shared D3D11 Texture2D whe
ui/dbus: fix build errors in dbus_update_gl_cb and dbus_call_update_gl
Add some ifdefs to avoid an unused function and unused variable.
Fixes: de1f8ce0abb8 ("ui/dbus: use shared D3D11 Texture2D when possible") Co-developed-by: BALATON Zoltan <balaton@eik.bme.hu> Message-Id: <336f7697-bcfa-1f5f-e411-6859815aa26c@eik.bme.hu> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
show more ...
|
de1f8ce0 | 06-Jun-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
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 proce
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>
show more ...
|
bf41ab61 | 06-Jun-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
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
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>
show more ...
|
06c63a34 | 06-Jun-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
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@r
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>
show more ...
|
cf283fb4 | 06-Jun-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
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> |
f43bf0a7 | 06-Jun-2023 |
Marc-André Lureau <marcandre.lureau@redhat.com> |
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 sh
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>
show more ...
|