[PATCH 2/3] tools/virtio: add __must_be_array stub
"rom.wang" <[email protected]> Tue, 4 Aug 2026 16:01:24 +0800
| Newsgroups | org.kernel.vger.kvm,dev.linux.lists.virtualization,org.kernel.vger.linux-kernel,org.kernel.vger.netdev |
|---|---|
| Message-ID | <[email protected]> |
From: Yufeng Wang <[email protected]> struct_size() expands to flex_array_size(), which uses __must_be_array() to assert at build time that its argument is an array. __must_be_array() is defined in the kernel's include/linux/compiler.h, but the tools/virtio compiler.h compat shim does not provide it, so any use of struct_size() in the test harness fails to build: ../include/linux/overflow.h:161:44: error: implicit declaration of function '__must_be_array' [-Wimplicit-function-declaration] 161 | sizeof(*(p)->member) + __must_be_array((p)->member),\ | ^~~~~~~~~~~~~~~ vhost_net_test.c:258:32: note: in expansion of macro 'struct_size' Stub __must_be_array() to 0, consistent with how BUILD_BUG_ON() and __must_check are already stubbed out in this environment. Signed-off-by: Yufeng Wang <[email protected]> --- tools/virtio/linux/compiler.h | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/virtio/linux/compiler.h b/tools/virtio/linux/compiler.h index 0f25db473f55..3fa035296fab 100644 --- a/tools/virtio/linux/compiler.h +++ b/tools/virtio/linux/compiler.h @@ -40,5 +40,6 @@ }) #define __must_check +#define __must_be_array(a) 0 #endif -- 2.34.1 No virus found Checked by Hillstone Network AntiVirus