On Wed, 14 Jan 2026 21:12:52 +0000
David Matlack <[email protected]> wrote:

> Drop the assertions about IOMMU mappings sizes for VFIO_TYPE1_IOMMU
> modes (both the VFIO mode and the iommufd compatibility mode). These
> assertions fail when CONFIG_IOMMUFD_VFIO_CONTAINER is enabled, since
> iommufd compatibility mode provides different huge page behavior than
> VFIO for VFIO_TYPE1_IOMMU. VFIO_TYPE1_IOMMU is an old enough interface
> that it's not worth changing the behavior of VFIO and iommufd to match
> nor care about the IOMMU mapping sizes.
> 
> Cc: Jason Gunthorpe <[email protected]>
> Link: https://lore.kernel.org/kvm/[email protected]/
> Signed-off-by: David Matlack <[email protected]>
> ---
>  tools/testing/selftests/vfio/vfio_dma_mapping_test.c | 8 ++------
>  1 file changed, 2 insertions(+), 6 deletions(-)

Applied to vfio next branch for v6.20/7.0.  Thanks,

Alex

> diff --git a/tools/testing/selftests/vfio/vfio_dma_mapping_test.c 
> b/tools/testing/selftests/vfio/vfio_dma_mapping_test.c
> index 5397822c3dd4..ecadd0e6b61b 100644
> --- a/tools/testing/selftests/vfio/vfio_dma_mapping_test.c
> +++ b/tools/testing/selftests/vfio/vfio_dma_mapping_test.c
> @@ -162,12 +162,8 @@ TEST_F(vfio_dma_mapping_test, dma_map_unmap)
>       if (rc == -EOPNOTSUPP)
>               goto unmap;
>  
> -     /*
> -      * IOMMUFD compatibility-mode does not support huge mappings when
> -      * using VFIO_TYPE1_IOMMU.
> -      */
> -     if (!strcmp(variant->iommu_mode, "iommufd_compat_type1"))
> -             mapping_size = SZ_4K;
> +     if (self->iommu->mode->iommu_type == VFIO_TYPE1_IOMMU)
> +             goto unmap;
>  
>       ASSERT_EQ(0, rc);
>       printf("Found IOMMU mappings for IOVA 0x%lx:\n", region.iova);
> 
> base-commit: d721f52e31553a848e0e9947ca15a49c5674aef3


Reply via email to