On Mon, Mar 16, 2026 at 11:21 AM <[email protected]> wrote:
>
> From: Manish Honap <[email protected]>
Please use "vfio: selftests: " instead of "selftests/vfio:" to match
all the other changes to tools/testing/selftests/vfio.
$ git log --oneline tools/testing/selftests/vfio
> C does not permit an initialiser expression on a variable-length array
> (C99 Section 6.7.9 constraint: "The type of the entity to be initialized
> shall not be a variable length array type").
>
> vfio_pci_irq_set() declared:
>
> u8 buf[sizeof(struct vfio_irq_set) + sizeof(int) * count] = {};
>
> where `count` is a runtime function parameter, making `buf` a VLA.
>
> GCC rejects this with (tried with GCC-9.4.0):
>
> error: variable-sized object may not be initialized
>
> Fix by removing the `= {}` initialiser and inserting an explicit
> memset() immediately after the declaration. memset() on a VLA is
> perfectly legal and achieves the same zero-initialisation on all
> conforming C implementations.
>
> This fix is self-contained: it touches only the existing vfio selftest
> helper library and carries no dependency on any other patch. It was
> originally included as PATCH 20/20 in the CXL Type-2 VFIO passthrough
> RFC series [1] but belongs on the vfio list independently, as noted by
> Dave Jiang.
This should go after the "---" below. It does not need to be in the
commit message.
> [1] https://lore.kernel.org/all/[email protected]/
I see you also included a new selftest in this series. I'm glad to see
more usage of VFIO selftests!
Can you please Cc me on any future changes that touch
tools/testing/selftests/vfio? Or better yet run
scripts/get_maintainer.pl and it should add me automatically. Thanks.
> Fixes: 19faf6fd969c ("vfio: selftests: Add a helper library for VFIO
> selftests")
> Cc: [email protected]
> Suggested-by: Dave Jiang <[email protected]>
> Signed-off-by: Manish Honap <[email protected]>
Aside from the commit message nits above:
Reviewed-by: David Matlack <[email protected]>