mirror-linux/tools
Manish Honap 4f42d71670 vfio: selftests: Fix VLA initialisation in vfio_pci_irq_set()
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.

Fixes: 19faf6fd96 ("vfio: selftests: Add a helper library for VFIO selftests")
Cc: stable@vger.kernel.org
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: David Matlack <dmatlack@google.com>
Signed-off-by: Manish Honap <mhonap@nvidia.com>
Link: https://lore.kernel.org/r/20260317051402.3725670-1-mhonap@nvidia.com
Signed-off-by: Alex Williamson <alex@shazbot.org>
2026-03-19 12:32:08 -06:00
..
accounting delayacct: fix build regression on accounting tool 2026-02-12 15:45:56 -08:00
arch perf tools changes for v7.0: 2026-02-21 10:51:08 -08:00
bootconfig bootconfig: Check the parsed output of the good examples 2026-02-05 22:21:23 +09:00
bpf bpftool: Fix truncated netlink dumps 2026-02-17 16:54:03 -08:00
build tools build: Fix feature test for rust compiler 2026-02-12 17:45:22 -03:00
certs
cgroup
counter
crypto
debugging
dma
docs tools: sphinx-build-wrapper: improve its help message 2026-02-02 09:57:46 -07:00
firewire
firmware
gpio
hv
iio
include perf tools changes for v7.0: 2026-02-21 10:51:08 -08:00
kvm/kvm_stat
laptop
leds
lib perf tools changes for v7.0: 2026-02-21 10:51:08 -08:00
memory-model
mm
net NFSD 7.0 Release Notes 2026-02-12 08:23:53 -08:00
objtool Rust fixes for v7.0-rc1 2026-02-22 08:43:31 -08:00
pcmcia
perf perf tools changes for v7.0: 2026-02-21 10:51:08 -08:00
power turbostat-2026.02.14-AMD-RAPL-fix 2026-02-18 09:52:38 -08:00
rcu
sched
sched_ext tools/sched_ext: fix getopt not re-parsed on restart 2026-02-20 17:17:38 -10:00
scripts perf test workload: Add code_with_type test workload 2026-02-08 19:16:24 -03:00
sound
spi spi: tools: Add include folder to .gitignore 2026-02-09 12:27:31 +00:00
testing vfio: selftests: Fix VLA initialisation in vfio_pci_irq_set() 2026-03-19 12:32:08 -06:00
thermal
time
tracing
usb
verification
virtio
wmi
workqueue
writeback
Makefile