qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] spice: remove obsolete callback


From: Frediano Ziglio
Subject: Re: [PATCH] spice: remove obsolete callback
Date: Fri, 18 Sep 2020 07:24:36 -0400 (EDT)

> 
> From: Marc-André Lureau <marcandre.lureau@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.
> 

You could use

#if SPICE_SERVER_VERSION <= 0x000e03 /* release 0.14.3 */

> Signed-off-by: Marc-André Lureau <marcandre.lureau@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

For 0.14.4 you can provide .attached_worker instead, even if version used would
be downgraded will work. Same function could be used (with a cast) for 
attache_worker.
It depends on the usefulness of the trace call.

>      .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,

Frediano




reply via email to

[Prev in Thread] Current Thread [Next in Thread]