On Tue, Nov 28, 2023 at 03:03:30PM -0800, Yosry Ahmed wrote:
quoted
Yes, another counter for KVM could be added. On the other hand KVM
only can be computed by subtracting one from another as there are only
two types of secondary page tables, KVM and IOMMU:
/sys/devices/system/node/node0/meminfo
Node 0 SecPageTables: 422204 kB
/sys/devices/system/node/nodeN/vmstat
nr_iommu_pages 105555
KVM only = SecPageTables - nr_iommu_pages * PAGE_SIZE / 1024
Right, but as I mention above, if userspace starts depending on this
equation, we won't be able to add any more classes of "secondary" page
tables to SecPageTables. I'd like to avoid that if possible. We can do
the subtraction in the kernel.
What Sean had suggested was that SecPageTables was always intended to
account all the non-primary mmu memory used by page tables. If this is
the case we shouldn't be trying to break it apart into finer
counters. These are big picture counters, not detailed allocation by
owner counters.
Jason