Re: WARNING: drivers/iommu/io-pgtable-arm.c:639

Keith Busch
2025-12-10T11:21:35Z

On Wed, Dec 10, 2025 at 12:08:36PM +0100, Sebastian Ott wrote:
> On Wed, 10 Dec 2025, Keith Busch wrote:
> > On Tue, Dec 09, 2025 at 12:43:31PM +0100, Sebastian Ott wrote:
> > > got the following warning after a kernel update on Thurstday, leading to a
> > > panic and fs corruption. I didn't capture the first warning but I'm pretty
> > > sure it was the same. It's reproducible but I didn't bisect since it
> > > borked my fs. The only hint I can give is that v6.18 worked. Is this a
> > > known issue? Anything I should try?
> >
> > Could you check if your nvme device supports SGLs? There are some new
> > features in 6.19 that would allow merging IO that wouldn't have happened
> > before. You can check from command line:
> >
> > # nvme id-ctrl /dev/nvme0 | grep sgl
>
> # nvme id-ctrl /dev/nvme0n1 | grep sgl
> sgls : 0xf0002

Oh neat, so you *do* support SGL. Not that it was required as arm64
can support iommu granularities larger than the NVMe PRP unit, so the
bug was possible to hit in either case for you (assuming the smmu was
configured with 64k io page size).

Anyway, thanks for the report, and sorry for the fs trouble the bug
caused you. I'm working on a blktest to specifically target this
condition so we don't regress again. I just need to make sure to run it
on a system with iommu enabled (usually it's off on my test machine).