Hi
On Thu, May 15, 2025 at 4:49 AM Vivek Kasireddy <vivek.kasireddy@intel.com>
wrote:
> Newer versions of Spice server should be able to accept dmabuf
> fds from Qemu for clients that are connected via the network.
> In other words, when this option is enabled, Qemu would share
> a dmabuf fd with Spice which would encode and send the data
> associated with the fd to a client that could be located on
> a different machine.
>
> 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>
> Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>
> ---
> include/ui/spice-display.h | 1 +
> ui/spice-core.c | 4 ++++
> ui/spice-display.c | 1 +
> 3 files changed, 6 insertions(+)
>
> diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h
> index e1a9b36185..f4922dd74b 100644
> --- a/include/ui/spice-display.h
> +++ b/include/ui/spice-display.h
> @@ -151,6 +151,7 @@ struct SimpleSpiceCursor {
> };
>
> extern bool spice_opengl;
> +extern bool remote_client;
>
All the globals you introduce here should have a spice_ prefix, for
readability and consistency.
>
> int qemu_spice_rect_is_empty(const QXLRect* r);
> void qemu_spice_rect_union(QXLRect *dest, const QXLRect *r);
> diff --git a/ui/spice-core.c b/ui/spice-core.c
> index 907b0e9a81..6c3bfe1d0f 100644
> --- a/ui/spice-core.c
> +++ b/ui/spice-core.c
> @@ -848,9 +848,13 @@ static void qemu_spice_init(void)
> #ifdef HAVE_SPICE_GL
> if (qemu_opt_get_bool(opts, "gl", 0)) {
> if ((port != 0) || (tls_port != 0)) {
> +#if SPICE_SERVER_VERSION >= 0x000f03 /* release 0.15.3 */
> + remote_client = 1;
> +#else
> error_report("SPICE GL support is local-only for now and "
> "incompatible with -spice port/tls-port");
> exit(1);
> +#endif
> }
> egl_init(qemu_opt_get(opts, "rendernode"), DISPLAY_GL_MODE_ON,
> &error_fatal);
> spice_opengl = 1;
> diff --git a/ui/spice-display.c b/ui/spice-display.c
> index 9c39d2c5c8..9140169015 100644
> --- a/ui/spice-display.c
> +++ b/ui/spice-display.c
> @@ -31,6 +31,7 @@
> #include "standard-headers/drm/drm_fourcc.h"
>
> bool spice_opengl;
> +bool remote_client;
>
> int qemu_spice_rect_is_empty(const QXLRect* r)
> {
> --
> 2.49.0
>
>