Re: [PATCH v3 10/10] iommu: account IOMMU allocated memory

From: Pasha Tatashin
Date: Tue Feb 13 2024 - 10:45:57 EST


> > SecPageTables
> > - Memory consumed by secondary page tables, this currently
> > - currently includes KVM mmu allocations on x86 and arm64.
> > + Memory consumed by secondary page tables, this currently includes
> > + KVM mmu and IOMMU allocations on x86 and arm64.

Hi Will,

> While I can see the value in this for IOMMU mappings managed by VFIO,
> doesn't this end up conflating that with the normal case of DMA domains?
> For systems that e.g. rely on an IOMMU for functional host DMA, it seems
> wrong to subject that to accounting constraints.

The accounting constraints are only applicable when GFP_KERNEL_ACCOUNT
is passed to the iommu mapping functions. We do that from the vfio,
iommufd, and vhost. Without this flag, the memory useage is reported
in /proc/meminfo as part of SecPageTables field, but not constrained
in cgroup.

Pasha