On Wed, 05 Aug 2026 00:20:57 +0000
Josh Hilke <[email protected]> wrote:

> This v10 of a series which adds a VFIO selftest driver for the Intel
> Gigabit Ethernet controller (IGB), specifically targeting the 82576
> device. IGB is fully virtualized in QEMU, making it suitable for running
> VFIO selftests without specialized hardware.
> 
> v9: 
> https://lore.kernel.org/kvm/[email protected]/
> 
> Version 10 adds an assert in the IGB driver to prevent DMA transfers
> smaller than 60 bytes, avoiding out-of-bounds DMA writes caused by
> hardware padding on short transfers, and squashes the recovery logic
> (previously Patch 5) into the main driver patch to keep the driver
> self-contained. Also add some logic from Alex to correct the ordering of
> Tx/Rx queue setup.
> 
> This series applies on top of linux-next, but the VFIO selftests don't
> build without this patch which fixes a compile error for the test
> fixture:
> https://lore.kernel.org/linux-kselftest/[email protected]/
> 
> Testing
> =======
> - VFIO selftests builds clean at every commit
> - vfio_pci_driver_test passes using IGB driver + QEMU. Use the following
>   command to run the tests:
> 
>   vng \
>   --run arch/x86/boot/bzImage \
>   --user root \
>   --disable-microvm \
>   --memory 32G \
>   --cpus 8 \
>   --qemu-opts="-M q35,accel=kvm,kernel-irqchip=split" \
>   --qemu-opts="-device 
> intel-iommu,intremap=on,caching-mode=on,device-iotlb=on" \
>   --qemu-opts="-netdev user,id=net0 -device igb,netdev=net0,addr=09.0" \
>   --append "console=ttyS0 earlyprintk=ttyS0 intel_iommu=on iommu=pt" \
>   --exec "modprobe vfio-pci && \
>           ./tools/testing/selftests/vfio/scripts/setup.sh 0000:00:09.0 && \
>           ./tools/testing/selftests/vfio/scripts/run.sh 
> ./tools/testing/selftests/vfio/vfio_pci_driver_test"
> --------
> Changelog:
> 
> v9 -> v10:
> - Add assert in IGB driver to prevent DMA transfers < 60 bytes (Ethernet
>   minimum payload size) to avoid memory corruption from hardware padding. 
> (Sashiko)
> - Squash recovery logic into the main driver patch to make the driver 
> self-contained. 
> - Set per-queue enable bits _after_ enabling global queue bits (Alex)

Applied to vfio next branch for v7.3.  Thanks,

Alex

Reply via email to