Re: [PATCH] iommu/io-pgtable-arm: Add support for contiguous hint bit
From: Jason Gunthorpe
Date: Tue Jul 07 2026 - 19:58:27 EST
On Tue, Jul 07, 2026 at 04:04:31PM -0700, Daniel Mentz wrote:
> > > Support is gated behind CONFIG_IOMMU_IO_PGTABLE_CONTIG_HINT, which
> > > provides a compile-time opt-out for hardware affected by SMMU errata
> > > related to the contiguous bit.
> >
> > I reviewed the errata and didn't find any related to contig that
> > required disabling contig, the driver was OK with the ones I
> > found.. Did you find something specific?
>
> Arm MMU-700 is affected by erratum 3777127 ("Under invalidation in TBU
> possible when using contiguous page table entries").
That looks like the same as the one I found 3673557 for Neoverse MMU S3
> However, if we disallow partial unmaps of groups of adjacent
> translation table entries, we implicitly apply the workaround
> ("Ensure that contiguous page tables are removed using a single
> range invalidation. Arm recommends using range invalidations to
> remove contiguous entries anyway for performance reasons.")
Right, that was my conclusion as well. SMMUs with this errata should
not enable BBM level 3 support which is the only thing that can
trigger a partial unmap of a contig block. My assumption was RIL is
supported in all affected SMMUs since that is the recommended
workaround..
Jason