[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20260119133748.2eaf7996@shazbot.org>
Date: Mon, 19 Jan 2026 13:37:48 -0700
From: Alex Williamson <alex@...zbot.org>
To: David Matlack <dmatlack@...gle.com>
Cc: Jason Gunthorpe <jgg@...pe.ca>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-kselftest@...r.kernel.org, Shuah Khan
<shuah@...nel.org>
Subject: Re: [PATCH] vfio: selftests: Drop IOMMU mapping size assertions for
VFIO_TYPE1_IOMMU
On Wed, 14 Jan 2026 21:12:52 +0000
David Matlack <dmatlack@...gle.com> 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 <jgg@...pe.ca>
> Link: https://lore.kernel.org/kvm/20260109143830.176dc279@shazbot.org/
> Signed-off-by: David Matlack <dmatlack@...gle.com>
> ---
> 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
Powered by blists - more mailing lists