qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 000/147] Meson integration for 5.2


From: Paolo Bonzini
Subject: Re: [PATCH 000/147] Meson integration for 5.2
Date: Mon, 10 Aug 2020 21:15:50 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0

On 10/08/20 20:20, Peter Maydell wrote:
> 
> In file included from ../../contrib/vhost-user-scsi/vhost-user-scsi.c:15:0:
> /usr/include/iscsi/scsi-lowlevel.h:810:13: error: inline function
> ‘scsi_set_uint16’ declared but never defined [-Werror]
>  inline void scsi_set_uint16(unsigned char *c, uint16_t val);
>              ^
> /usr/include/iscsi/scsi-lowlevel.h:809:13: error: inline function
> ‘scsi_set_uint32’ declared but never defined [-Werror]
>  inline void scsi_set_uint32(unsigned char *c, uint32_t val);
>              ^
> /usr/include/iscsi/scsi-lowlevel.h:808:17: error: inline function
> ‘scsi_get_uint16’ declared but never defined [-Werror]
>  inline uint16_t scsi_get_uint16(const unsigned char *c);
>                  ^
> /usr/include/iscsi/scsi-lowlevel.h:807:17: error: inline function
> ‘scsi_get_uint32’ declared but never defined [-Werror]
>  inline uint32_t scsi_get_uint32(const unsigned char *c);
>                  ^
> /usr/include/iscsi/scsi-lowlevel.h:810:13: error: inline function
> ‘scsi_set_uint16’ declared but never defined [-Werror]
>  inline void scsi_set_uint16(unsigned char *c, uint16_t val);
>              ^
> /usr/include/iscsi/scsi-lowlevel.h:809:13: error: inline function
> ‘scsi_set_uint32’ declared but never defined [-Werror]
>  inline void scsi_set_uint32(unsigned char *c, uint32_t val);
>              ^
> /usr/include/iscsi/scsi-lowlevel.h:808:17: error: inline function
> ‘scsi_get_uint16’ declared but never defined [-Werror]
>  inline uint16_t scsi_get_uint16(const unsigned char *c);
>                  ^
> /usr/include/iscsi/scsi-lowlevel.h:807:17: error: inline function
> ‘scsi_get_uint32’ declared but never defined [-Werror]
>  inline uint32_t scsi_get_uint32(const unsigned char *c);
>                  ^
> cc1: all warnings being treated as errors
> 
> (Looks like an error in the version of the system header
> file on this system, which, unlike my x86 box, defines
> the prototypes with "inline" (a change that came in upstream
> in commit
> https://github.com/sahlberg/libiscsi/commit/7692027d6c11c58948ec3c493abea808af00fdd0
> ).

This is pre-existing.  Because I found some bitrot (like this...), a few 
more executables are now built by default.  We are already working 
around it in block/iscsi.c, I'll add the same in vhost-user-scsi.c.

--------- 8< ---------
>From 805320beafec25f3eadf9a7c58178427480f915d Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <pbonzini@redhat.com>
Date: Mon, 10 Aug 2020 21:15:19 +0200
Subject: [PATCH] vhost-user-scsi: add compatibility for libiscsi 1.9.0

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

diff --git a/contrib/vhost-user-scsi/vhost-user-scsi.c 
b/contrib/vhost-user-scsi/vhost-user-scsi.c
index 7a1db16..3c91238 100644
--- a/contrib/vhost-user-scsi/vhost-user-scsi.c
+++ b/contrib/vhost-user-scsi/vhost-user-scsi.c
@@ -12,7 +12,9 @@
 
 #include "qemu/osdep.h"
 #include <iscsi/iscsi.h>
+#define inline __attribute__((gnu_inline))  /* required for libiscsi v1.9.0 */
 #include <iscsi/scsi-lowlevel.h>
+#undef inline
 #include "contrib/libvhost-user/libvhost-user-glib.h"
 #include "standard-headers/linux/virtio_scsi.h"
 

Paolo




reply via email to

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