On 24/08/2022 15:24, Marc Zyngier wrote:
On Wed, 24 Aug 2022 14:43:43 +0100,
Ryan Roberts <ryan.roberts@xxxxxxx> wrote:
Count the pages used by KVM in arm64 for stage2 mmu in memory stats
under secondary pagetable stats (e.g. "SecPageTables" in /proc/meminfo)
to give better visibility into the memory consumption of KVM mmu in a
similar way to how normal user page tables are accounted.
Signed-off-by: Yosry Ahmed <yosryahmed@xxxxxxxxxx>
Reviewed-by: Oliver Upton <oliver.upton@xxxxxxxxx>
Reviewed-by: Marc Zyngier <maz@xxxxxxxxxx>
---
I see that you are not including the memory reserved for the host
stage2 table when using protected KVM. Is this something worth adding?
(See arch/arm64/kvm/pkvm.c:kvm_hyp_reserve()).
This reservation is done pretty early on in bootmem_init() so not sure
if this could cause some init ordering issues that might be tricky to
solve though.
I also don't see what this buys us. This memory can't be reclaimed,
and is not part of KVM's job for the purpose of running guests, which
is what this series is about.
If anything, it should be accounted separately.
OK fair enough. It just struck me from the patch description that the
host stage2 might qualify as "pages used by KVM in arm64 for stage2
mmu". But I don't have any understanding of the use case this is for.
Sorry for the noise!
Thanks,
Ryan