On 04/24/2017 05:52 PM, Adrien Mazarguil wrote:
Exported headers must allow compilation with the strictest flags. This
commit addresses the following errors:

  In file included from /tmp/check-includes.sh.20132.c:1:0:
  build/include/rte_vhost.h:73:30: error: ISO C forbids zero-size array
     'regions' [-Werror=pedantic]
  [...]

Also:

- Add C++ awareness to rte_vhost.h for consistency with rte_eth_vhost.h.
- Move Linux includes into C++ block to prevent linking issues with
   exported symbols.
- Update check-includes.sh following the removal of rte_virtio_net.h.

Finally, update check-includes.sh to ignore rte_vhost.h and rte_eth_vhost.h
from now on since the Linux headers they depend on are not clean enough:

  In file included from /usr/include/linux/vhost.h:17:0,
                   from build/include/rte_vhost.h:43,
                   from build/include/rte_eth_vhost.h:44,
                   from /tmp/check-includes.sh.20132.c:1:
  /usr/include/linux/virtio_ring.h: In function 'vring_init':
  /usr/include/linux/virtio_ring.h:146:16: error: pointer of type 'void *'
     used in arithmetic [-Werror=pointer-arith]
  [...]
  In file included from build/include/rte_vhost.h:43:0,
                   from build/include/rte_eth_vhost.h:44,
                   from /tmp/check-includes.sh.20132.c:1:
  /usr/include/linux/vhost.h: At top level:
  /usr/include/linux/vhost.h:73:3: error: ISO C99 doesn't support unnamed
     structs/unions [-Werror=pedantic]
  [...]

Fixes: eb32247457fe ("vhost: export guest memory regions")
Fixes: a798beb47c8e ("vhost: rename header file")

Cc: Yuanhan Liu <yuanhan....@linux.intel.com>
Cc: Maxime Coquelin <maxime.coque...@redhat.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarg...@6wind.com>
---
  devtools/check-includes.sh   |  4 +++-
  lib/librte_vhost/rte_vhost.h | 16 +++++++++++++---
  2 files changed, 16 insertions(+), 4 deletions(-)

Acked-by: Maxime Coquelin <maxime.coque...@redhat.com>

Thanks,
Maxime

Reply via email to