05/12/2023 10:45, David Marchand: > +#define VHOST_USER_ASSERT_LOCK(dev, vq, id) do { \ > + RTE_BUILD_BUG_ON(!vhost_message_handlers[id].lock_all_qps); \ > + vq_assert_lock(dev, vq); \ > +} while (0)
Since "eal: enhance compile-time checks using C11 assert", it is not allowed to have non-constant check in RTE_BUILD_BUG_ON: lib/vhost/vhost_user.c:413:25: note: in expansion of macro 'VHOST_USER_ASSERT_LOCK' lib/vhost/vhost_user.c: In function 'vhost_user_set_vring_addr': lib/eal/include/rte_common.h:518:56: error: expression in static assertion is not constant #define RTE_BUILD_BUG_ON(condition) do { static_assert(!(condition), #condition); } while (0) I suppose we can make this check at compile-time with few adjustments. For -rc1, I am dropping this patch.