mirror of https://gitlab.com/qemu-project/qemu
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
![]() If a virtual machine is paused for an extended period time, for example, due to an incoming migration, there are also no changes on the screen. VNC in such case increases the display update interval by VNC_REFRESH_INTERVAL_INC (50 ms). The update interval can then grow up to VNC_REFRESH_INTERVAL_MAX (3000 ms). When the machine resumes, it can then take up to 3 seconds for the first display update. Furthermore, the update interval is then halved with each display update with changes on the screen. If there are moving elements on the screen, such as a video, this can be perceived as freezing and stuttering for few seconds before the movement is smooth again. This patch resolves this issue, by adding a listener to VM state changes and changing the update interval when the VM state changes to RUNNING. The update_displaychangelistener() function updates the internal timer, and the display is refreshed immediately if the timer is expired. Signed-off-by: Juraj Marcin <jmarcin@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Link: https://lore.kernel.org/r/20250521151616.3951178-1-jmarcin@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com> |
5 days ago | |
---|---|---|
.. | ||
icons | ||
shader | ||
clipboard.c | 1 month ago | |
cocoa.m | 6 months ago | |
console-gl.c | ||
console-priv.h | 1 year ago | |
console-vc-stubs.c | 1 year ago | |
console-vc.c | 2 months ago | |
console.c | 2 months ago | |
curses.c | 6 months ago | |
curses_keys.h | ||
cursor.c | 9 months ago | |
cursor_hidden.xpm | ||
cursor_left_ptr.xpm | ||
dbus-chardev.c | 2 months ago | |
dbus-clipboard.c | 6 months ago | |
dbus-console.c | 5 months ago | |
dbus-display1.xml | 2 months ago | |
dbus-error.c | ||
dbus-listener.c | 2 months ago | |
dbus-module.c | ||
dbus.c | 2 months ago | |
dbus.h | ||
dmabuf.c | 2 months ago | |
egl-context.c | 10 months ago | |
egl-headless.c | 10 months ago | |
egl-helpers.c | 1 month ago | |
gtk-clipboard.c | 1 month ago | |
gtk-egl.c | 1 month ago | |
gtk-gl-area.c | 1 month ago | |
gtk.c | 1 month ago | |
input-barrier.c | 2 months ago | |
input-barrier.h | ||
input-keymap.c | ||
input-legacy.c | 8 months ago | |
input-linux.c | 2 months ago | |
input.c | 6 months ago | |
kbd-state.c | 1 year ago | |
keymaps.c | ||
keymaps.h | ||
meson.build | 2 months ago | |
qemu-pixman.c | 1 month ago | |
qemu-x509.h | ||
qemu.desktop | ||
sdl2-2d.c | 1 year ago | |
sdl2-gl.c | 1 month ago | |
sdl2-input.c | 10 months ago | |
sdl2.c | 1 month ago | |
shader.c | ||
spice-app.c | 2 months ago | |
spice-core.c | 6 months ago | |
spice-display.c | 2 months ago | |
spice-input.c | ||
spice-module.c | ||
trace-events | 9 months ago | |
trace.h | ||
udmabuf.c | ||
ui-hmp-cmds.c | 5 months ago | |
ui-qmp-cmds.c | ||
util.c | ||
vdagent.c | 1 month ago | |
vgafont.h | ||
vnc-auth-sasl.c | 8 months ago | |
vnc-auth-sasl.h | ||
vnc-auth-vencrypt.c | ||
vnc-auth-vencrypt.h | ||
vnc-clipboard.c | ||
vnc-enc-hextile-template.h | ||
vnc-enc-hextile.c | ||
vnc-enc-tight.c | 1 month ago | |
vnc-enc-tight.h | ||
vnc-enc-zlib.c | ||
vnc-enc-zrle.c | 1 month ago | |
vnc-enc-zrle.c.inc | ||
vnc-enc-zrle.h | ||
vnc-enc-zywrle-template.c | ||
vnc-enc-zywrle.h | ||
vnc-jobs.c | 1 month ago | |
vnc-jobs.h | ||
vnc-palette.c | ||
vnc-palette.h | ||
vnc-stubs.c | ||
vnc-ws.c | ||
vnc-ws.h | ||
vnc.c | 5 days ago | |
vnc.h | 5 days ago | |
vnc_keysym.h | ||
win32-kbd-hook.c | 6 months ago | |
x_keymap.c | ||
x_keymap.h |