diff options
author | Vivek Kasireddy <vivek.kasireddy@intel.com> | 2025-06-16 21:32:28 -0700 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@redhat.com> | 2025-07-15 10:22:33 +0400 |
commit | 50d135e3779f276eba93c63dff49a940b85e23a5 (patch) | |
tree | be4dea9d9e8b97923759eb055d81b114117b8113 /include | |
parent | bd46161dd1bef1da9402fa10aa6e8f38b4dfe1d3 (diff) | |
download | qemu-50d135e3779f276eba93c63dff49a940b85e23a5.zip qemu-50d135e3779f276eba93c63dff49a940b85e23a5.tar.gz qemu-50d135e3779f276eba93c63dff49a940b85e23a5.tar.bz2 |
ui/spice: Add an option to submit gl_draw requests at fixed rate
In the specific case where the display layer (virtio-gpu) is using
dmabuf, and if remote clients are enabled (-spice gl=on,port=xxxx),
it makes sense to limit the maximum (streaming) rate (refresh rate)
to a fixed value using the GUI refresh timer. Otherwise, the updates
or gl_draw requests would be sent as soon as the Guest submits a new
frame which is not optimal as it would lead to increased network
traffic and wastage of GPU cycles if the frames get dropped.
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Cc: Frediano Ziglio <freddy77@gmail.com>
Cc: Dongwon Kim <dongwon.kim@intel.com>
Cc: Michael Scherle <michael.scherle@rz.uni-freiburg.de>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>
Message-Id: <20250617043546.1022779-5-vivek.kasireddy@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/ui/spice-display.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h index 6c55f38..9bdde78 100644 --- a/include/ui/spice-display.h +++ b/include/ui/spice-display.h @@ -152,6 +152,7 @@ struct SimpleSpiceCursor { extern bool spice_opengl; extern bool spice_remote_client; +extern int spice_max_refresh_rate; int qemu_spice_rect_is_empty(const QXLRect* r); void qemu_spice_rect_union(QXLRect *dest, const QXLRect *r); |