From: Marc-André Lureau <marcandre.lur...@redhat.com> The "attach_worker" callbacks aren't doing anything in QEMU, but they were mandatory until Spice server commit 6aa1a17c69dc3cc02f338a78b3266e4c00ea1c1a ("spice-qxl: Remove QXLWorker definition").
Furthermore, the old spelling is deprecated since commit 974692bda1e77af92b71ed43b022439448492cb9 ("spice-qxl: Fix typo in callback name and remove obsolete parameter") Compile that code out if Spice server version is recent enough. Fix compiler deprecation warnings with Spice > 0.14.3 (not released yet). We may want to wait until newer version is actually released to apply the patch. Signed-off-by: Marc-André Lureau <marcandre.lur...@redhat.com> --- hw/display/qxl.c | 4 ++++ ui/spice-display.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/hw/display/qxl.c b/hw/display/qxl.c index 11871340e7..a02072dee0 100644 --- a/hw/display/qxl.c +++ b/hw/display/qxl.c @@ -518,12 +518,14 @@ static int qxl_track_command(PCIQXLDevice *qxl, struct QXLCommandExt *ext) /* spice display interface callbacks */ +#if SPICE_SERVER_VERSION < 0x000e04 /* release 0.14.4 */ static void interface_attach_worker(QXLInstance *sin, QXLWorker *qxl_worker) { PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl); trace_qxl_interface_attach_worker(qxl->id); } +#endif static void interface_set_compression_level(QXLInstance *sin, int level) { @@ -1156,7 +1158,9 @@ static const QXLInterface qxl_interface = { .base.major_version = SPICE_INTERFACE_QXL_MAJOR, .base.minor_version = SPICE_INTERFACE_QXL_MINOR, +#if SPICE_SERVER_VERSION < 0x000e04 /* release 0.14.4 */ .attache_worker = interface_attach_worker, +#endif .set_compression_level = interface_set_compression_level, #if SPICE_NEEDS_SET_MM_TIME .set_mm_time = interface_set_mm_time, diff --git a/ui/spice-display.c b/ui/spice-display.c index 19632fdf6c..811936ff7f 100644 --- a/ui/spice-display.c +++ b/ui/spice-display.c @@ -500,10 +500,12 @@ void qemu_spice_display_refresh(SimpleSpiceDisplay *ssd) /* spice display interface callbacks */ +#if SPICE_SERVER_VERSION < 0x000e04 /* release 0.14.4 */ static void interface_attach_worker(QXLInstance *sin, QXLWorker *qxl_worker) { /* nothing to do */ } +#endif static void interface_set_compression_level(QXLInstance *sin, int level) { @@ -709,7 +711,9 @@ static const QXLInterface dpy_interface = { .base.major_version = SPICE_INTERFACE_QXL_MAJOR, .base.minor_version = SPICE_INTERFACE_QXL_MINOR, +#if SPICE_SERVER_VERSION < 0x000e04 /* release 0.14.4 */ .attache_worker = interface_attach_worker, +#endif .set_compression_level = interface_set_compression_level, #if SPICE_NEEDS_SET_MM_TIME .set_mm_time = interface_set_mm_time, -- 2.26.2