From: "Daniel P. Berrangé" <berrange@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Fam Zheng" <fam@euphon.net>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Thomas Huth" <thuth@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
"Willian Rampazzo" <willianr@redhat.com>,
"John Snow" <jsnow@redhat.com>,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>
Subject: [PATCH v4 02/18] spice: Update QXLInterface for spice >= 0.15.0
Date: Wed, 24 Nov 2021 13:01:34 +0000 [thread overview]
Message-ID: <20211124130150.268230-3-berrange@redhat.com> (raw)
In-Reply-To: <20211124130150.268230-1-berrange@redhat.com>
From: John Snow <jsnow@redhat.com>
spice updated the spelling (and arguments) of "attache_worker" in
0.15.0. Update QEMU to match, preventing -Wdeprecated-declarations
compilations from reporting build errors.
See also:
https://gitlab.freedesktop.org/spice/spice/-/commit/974692bda1e77af92b71ed43b022439448492cb9
Signed-off-by: John Snow <jsnow@redhat.com>
---
hw/display/qxl.c | 14 +++++++++++++-
include/ui/qemu-spice.h | 6 ++++++
ui/spice-display.c | 11 +++++++++++
3 files changed, 30 insertions(+), 1 deletion(-)
diff --git a/hw/display/qxl.c b/hw/display/qxl.c
index 29c80b4289..1da6703e44 100644
--- a/hw/display/qxl.c
+++ b/hw/display/qxl.c
@@ -517,13 +517,20 @@ static int qxl_track_command(PCIQXLDevice *qxl, struct QXLCommandExt *ext)
/* spice display interface callbacks */
-static void interface_attach_worker(QXLInstance *sin, QXLWorker *qxl_worker)
+static void interface_attached_worker(QXLInstance *sin)
{
PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl);
trace_qxl_interface_attach_worker(qxl->id);
}
+#if !(SPICE_HAS_ATTACHED_WORKER)
+static void interface_attach_worker(QXLInstance *sin, QXLWorker *qxl_worker)
+{
+ interface_attached_worker(sin);
+}
+#endif
+
static void interface_set_compression_level(QXLInstance *sin, int level)
{
PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl);
@@ -1131,7 +1138,12 @@ static const QXLInterface qxl_interface = {
.base.major_version = SPICE_INTERFACE_QXL_MAJOR,
.base.minor_version = SPICE_INTERFACE_QXL_MINOR,
+#if SPICE_HAS_ATTACHED_WORKER
+ .attached_worker = interface_attached_worker,
+#else
.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/include/ui/qemu-spice.h b/include/ui/qemu-spice.h
index 71ecd6cfd1..21fe195e18 100644
--- a/include/ui/qemu-spice.h
+++ b/include/ui/qemu-spice.h
@@ -40,6 +40,12 @@ int qemu_spice_migrate_info(const char *hostname, int port, int tls_port,
#define SPICE_NEEDS_SET_MM_TIME 0
#endif
+#if defined(SPICE_SERVER_VERSION) && (SPICE_SERVER_VERSION >= 0x000f00)
+#define SPICE_HAS_ATTACHED_WORKER 1
+#else
+#define SPICE_HAS_ATTACHED_WORKER 0
+#endif
+
#else /* CONFIG_SPICE */
#include "qemu/error-report.h"
diff --git a/ui/spice-display.c b/ui/spice-display.c
index f59c69882d..1a60cebb7d 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -500,10 +500,17 @@ void qemu_spice_display_refresh(SimpleSpiceDisplay *ssd)
/* spice display interface callbacks */
+#if SPICE_HAS_ATTACHED_WORKER
+static void interface_attached_worker(QXLInstance *sin)
+{
+ /* nothing to do */
+}
+#else
static void interface_attach_worker(QXLInstance *sin, QXLWorker *qxl_worker)
{
/* nothing to do */
}
+#endif
static void interface_set_compression_level(QXLInstance *sin, int level)
{
@@ -702,7 +709,11 @@ static const QXLInterface dpy_interface = {
.base.major_version = SPICE_INTERFACE_QXL_MAJOR,
.base.minor_version = SPICE_INTERFACE_QXL_MINOR,
+#if SPICE_HAS_ATTACHED_WORKER
+ .attached_worker = interface_attached_worker,
+#else
.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.33.1
next prev parent reply other threads:[~2021-11-24 13:05 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-24 13:01 [PATCH v4 00/18] tests/docker: start using libvirt-ci's "lcitool" for dockerfiles Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 01/18] ui: avoid compiler warnings from unused clipboard info variable Daniel P. Berrangé
2021-11-24 13:33 ` Philippe Mathieu-Daudé
2021-12-15 10:22 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` Daniel P. Berrangé [this message]
2021-11-24 13:34 ` [PATCH v4 02/18] spice: Update QXLInterface for spice >= 0.15.0 Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 03/18] meson: require liburing >= 0.3 Daniel P. Berrangé
2021-12-15 11:27 ` Philippe Mathieu-Daudé
2021-12-15 11:56 ` Philippe Mathieu-Daudé
2021-12-15 13:25 ` Stefan Hajnoczi
2021-12-15 13:47 ` Stefano Garzarella
2021-12-15 16:21 ` Li Zhang
2021-11-24 13:01 ` [PATCH v4 04/18] ui: avoid warnings about directdb on Alpine / musl libc Daniel P. Berrangé
2021-11-24 13:32 ` Thomas Huth
2021-11-24 13:42 ` Daniel P. Berrangé
2021-12-15 11:59 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 05/18] ci: explicitly skip I/O tests on alpine Daniel P. Berrangé
2021-11-24 13:36 ` Thomas Huth
2021-11-24 13:38 ` Philippe Mathieu-Daudé
2021-11-24 13:46 ` Daniel P. Berrangé
2021-12-15 12:02 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 06/18] tests/docker: switch fedora image to release 35 Daniel P. Berrangé
2021-12-15 11:28 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 07/18] tests: integrate lcitool for generating build env manifests Daniel P. Berrangé
2021-12-15 11:45 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 08/18] tests/docker: auto-generate centos8.docker with lcitool Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 09/18] tests/docker: auto-generate fedora.docker " Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 10/18] tests/docker: auto-generate ubuntu1804.docker " Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 11/18] tests/docker: auto-generate ubuntu2004.docker " Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 12/18] tests/docker: auto-generate opensuse-leap.docker " Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 13/18] tests/docker: remove ubuntu.docker container Daniel P. Berrangé
2021-11-24 13:01 ` [PATCH v4 14/18] .gitlab-ci.d/cirrus: auto-generate variables with lcitool Daniel P. Berrangé
2021-12-15 11:36 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 15/18] tests/docker: updates to alpine package list Daniel P. Berrangé
2021-12-15 11:31 ` Philippe Mathieu-Daudé
2021-12-15 11:43 ` Daniel P. Berrangé
2021-12-15 11:47 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 16/18] tests/docker: fix sorting of alpine image package lists Daniel P. Berrangé
2021-11-24 13:39 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 17/18] tests/docker: fully expand the alpine package list Daniel P. Berrangé
2021-12-15 11:32 ` Philippe Mathieu-Daudé
2021-11-24 13:01 ` [PATCH v4 18/18] tests/docker: auto-generate alpine.docker with lcitool Daniel P. Berrangé
2021-11-24 13:42 ` Philippe Mathieu-Daudé
2021-12-15 12:57 ` [PATCH v4 00/18] tests/docker: start using libvirt-ci's "lcitool" for dockerfiles Daniel P. Berrangé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211124130150.268230-3-berrange@redhat.com \
--to=berrange@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=f4bug@amsat.org \
--cc=fam@euphon.net \
--cc=jsnow@redhat.com \
--cc=kraxel@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thuth@redhat.com \
--cc=wainersm@redhat.com \
--cc=willianr@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.