Hi, Linux now provides a VFIO dmabuf exporter to expose PCI BAR memory for P2P use cases. This adds support for vfio devices to create a dmabuf for each mapped BAR region.
Changes from v2: https://lore.kernel.org/qemu-devel/[email protected]/ - Addressed feedback on v2 and picked up R-by/T-by tags. Thanks!. - This has dependnecy on patches sent by Cédric[0][1] The dmabuf support was sanity tested on an NVIDIA grace paltform. Please take a look and let me know. Thanks, Shameer [0] https://lore.kernel.org/qemu-devel/[email protected]/ [1] https://lore.kernel.org/qemu-devel/[email protected]/ Nicolin Chen (1): hw/vfio/region: Create dmabuf for PCI BAR per region Shameer Kolothum (3): linux-headers: Update to Linux v6.19-rc1 hw/net/virtio-net: Adapt hash handling to updated UAPI hw/vfio: Add helper to retrieve device feature hw/net/virtio-net.c | 11 +- hw/vfio/container.c | 2 +- hw/vfio/device.c | 9 + hw/vfio/listener.c | 4 +- hw/vfio/region.c | 65 ++- hw/vfio/trace-events | 1 + include/hw/vfio/vfio-device.h | 3 + include/standard-headers/drm/drm_fourcc.h | 25 +- include/standard-headers/linux/ethtool.h | 5 + .../linux/input-event-codes.h | 14 +- include/standard-headers/linux/pci_regs.h | 89 ++++ include/standard-headers/linux/virtio_net.h | 3 +- include/standard-headers/linux/virtio_pci.h | 2 +- linux-headers/asm-arm64/kvm.h | 2 +- linux-headers/asm-arm64/unistd_64.h | 1 + linux-headers/asm-generic/unistd.h | 4 +- linux-headers/asm-loongarch/kvm.h | 1 + linux-headers/asm-loongarch/unistd.h | 6 + linux-headers/asm-loongarch/unistd_64.h | 1 + linux-headers/asm-mips/unistd_n32.h | 1 + linux-headers/asm-mips/unistd_n64.h | 1 + linux-headers/asm-mips/unistd_o32.h | 1 + linux-headers/asm-powerpc/unistd_32.h | 1 + linux-headers/asm-powerpc/unistd_64.h | 1 + linux-headers/asm-riscv/kvm.h | 3 + linux-headers/asm-riscv/unistd_32.h | 1 + linux-headers/asm-riscv/unistd_64.h | 1 + linux-headers/asm-s390/bitsperlong.h | 4 - linux-headers/asm-s390/unistd.h | 4 - linux-headers/asm-s390/unistd_32.h | 446 ------------------ linux-headers/asm-s390/unistd_64.h | 9 +- linux-headers/asm-x86/kvm.h | 1 + linux-headers/asm-x86/unistd_32.h | 1 + linux-headers/asm-x86/unistd_64.h | 1 + linux-headers/asm-x86/unistd_x32.h | 1 + linux-headers/linux/iommufd.h | 10 + linux-headers/linux/kvm.h | 11 + linux-headers/linux/mshv.h | 116 ++++- linux-headers/linux/psp-sev.h | 66 ++- linux-headers/linux/vfio.h | 28 ++ 40 files changed, 450 insertions(+), 506 deletions(-) delete mode 100644 linux-headers/asm-s390/unistd_32.h -- 2.43.0
