Re: [PATCH v6 00/11] vfio/pci: Allow MMIO regions to be exported through dma-buf

Cédric Le Goater
2025-12-17T17:01:55Z

Hello Nicolin,

On 11/4/25 20:19, Nicolin Chen wrote:
> On Sun, Nov 02, 2025 at 10:00:48AM +0200, Leon Romanovsky wrote:
>> Changelog:
>> v6:
>> * Fixed wrong error check from pcim_p2pdma_init().
>> * Documented pcim_p2pdma_provider() function.
>> * Improved commit messages.
>> * Added VFIO DMA-BUF selftest.
>> * Added __counted_by(nr_ranges) annotation to struct vfio_device_feature_dma_buf.
>> * Fixed error unwind when dma_buf_fd() fails.
>> * Document latest changes to p2pmem.
>> * Removed EXPORT_SYMBOL_GPL from pci_p2pdma_map_type.
>> * Moved DMA mapping logic to DMA-BUF.
>> * Removed types patch to avoid dependencies between subsystems.
>> * Moved vfio_pci_dma_buf_move() in err_undo block.
>> * Added nvgrace patch.
>
> I have verified this v6 using Jason's iommufd dmabuf branch:
> https://github.com/jgunthorpe/linux/commits/iommufd_dmabuf/
>
> by drafting a QEMU patch on top of Shameer's vSMMU v5 series:
> https://github.com/nicolinc/qemu/commits/wip/iommufd_dmabuf/
>
> with that, I see GPU BAR memory be correctly fetched in the QEMU:
> vfio_region_dmabuf Device 0009:01:00.0, region "0009:01:00.0 BAR 0", offset: 0x0, size: 0x1000000
> vfio_region_dmabuf Device 0009:01:00.0, region "0009:01:00.0 BAR 2", offset: 0x0, size: 0x44f00000
> vfio_region_dmabuf Device 0009:01:00.0, region "0009:01:00.0 BAR 4", offset: 0x0, size: 0x17a0000000
>
> Tested-by: Nicolin Chen <nicolinc@nvidia.com>

Do you plan to provide P2P support with IOMMUFD for QEMU ?

Thanks,

C.