mbox series

[v4,0/3] Count pKVM stage-2 usage in secondary pagetable stat

Message ID 20250313114038.1502357-1-vdonnefort@google.com (mailing list archive)
Headers show
Series Count pKVM stage-2 usage in secondary pagetable stat | expand

Message

Vincent Donnefort March 13, 2025, 11:40 a.m. UTC
This series allows to count stage-2 related memory when using pKVM. The
value can be found in the /proc/meminfo field SecPageTables.

Changes since v3: https://lore.kernel.org/all/20250307113411.469018-1-vdonnefort@google.com/
  - Remove unnecessary void * cast (Marc)
  - Rename reclaim_guest_pages() -> reclaim_pgtable_pages() (Marc)
  - Remove unnecessary PAGE_ALIGN(pgd_sz)

Changes since v2: https://lore.kernel.org/all/20250304134347.369854-1-vdonnefort@google.com/
  - Pass a pointer to kvm_hyp_memcache instead of just the flags
    (Oliver)

Changes since v1: https://lore.kernel.org/all/20250228121355.1377891-1-vdonnefort@google.com/
  - Flags to kvm_hyp_memcache
  - Separate stage-2 memcache
  - Account for PGD

Vincent Donnefort (3):
  KVM: arm64: Add flags to kvm_hyp_memcache
  KVM: arm64: Distinct pKVM teardown memcache for stage-2
  KVM: arm64: Count pKVM stage-2 usage in secondary pagetable stats

 arch/arm64/include/asm/kvm_host.h             |  4 ++++
 arch/arm64/kvm/hyp/include/nvhe/mem_protect.h |  2 +-
 arch/arm64/kvm/hyp/nvhe/mem_protect.c         |  2 +-
 arch/arm64/kvm/hyp/nvhe/pkvm.c                |  8 +++----
 arch/arm64/kvm/mmu.c                          | 22 ++++++++++++++-----
 arch/arm64/kvm/pkvm.c                         |  5 +++++
 6 files changed, 32 insertions(+), 11 deletions(-)


base-commit: d082ecbc71e9e0bf49883ee4afd435a77a5101b6

Comments

Marc Zyngier March 13, 2025, 1:13 p.m. UTC | #1
On Thu, 13 Mar 2025 11:40:35 +0000,
Vincent Donnefort <vdonnefort@google.com> wrote:
> 
> This series allows to count stage-2 related memory when using pKVM. The
> value can be found in the /proc/meminfo field SecPageTables.
> 
> Changes since v3: https://lore.kernel.org/all/20250307113411.469018-1-vdonnefort@google.com/
>   - Remove unnecessary void * cast (Marc)
>   - Rename reclaim_guest_pages() -> reclaim_pgtable_pages() (Marc)
>   - Remove unnecessary PAGE_ALIGN(pgd_sz)
> 
> Changes since v2: https://lore.kernel.org/all/20250304134347.369854-1-vdonnefort@google.com/
>   - Pass a pointer to kvm_hyp_memcache instead of just the flags
>     (Oliver)
> 
> Changes since v1: https://lore.kernel.org/all/20250228121355.1377891-1-vdonnefort@google.com/
>   - Flags to kvm_hyp_memcache
>   - Separate stage-2 memcache
>   - Account for PGD
> 
> Vincent Donnefort (3):
>   KVM: arm64: Add flags to kvm_hyp_memcache
>   KVM: arm64: Distinct pKVM teardown memcache for stage-2
>   KVM: arm64: Count pKVM stage-2 usage in secondary pagetable stats
> 
>  arch/arm64/include/asm/kvm_host.h             |  4 ++++
>  arch/arm64/kvm/hyp/include/nvhe/mem_protect.h |  2 +-
>  arch/arm64/kvm/hyp/nvhe/mem_protect.c         |  2 +-
>  arch/arm64/kvm/hyp/nvhe/pkvm.c                |  8 +++----
>  arch/arm64/kvm/mmu.c                          | 22 ++++++++++++++-----
>  arch/arm64/kvm/pkvm.c                         |  5 +++++
>  6 files changed, 32 insertions(+), 11 deletions(-)

Acked-by: Marc Zyngier <maz@kernel.org>

	M.
Oliver Upton March 14, 2025, 11:11 p.m. UTC | #2
On Thu, 13 Mar 2025 11:40:35 +0000, Vincent Donnefort wrote:
> This series allows to count stage-2 related memory when using pKVM. The
> value can be found in the /proc/meminfo field SecPageTables.
> 
> Changes since v3: https://lore.kernel.org/all/20250307113411.469018-1-vdonnefort@google.com/
>   - Remove unnecessary void * cast (Marc)
>   - Rename reclaim_guest_pages() -> reclaim_pgtable_pages() (Marc)
>   - Remove unnecessary PAGE_ALIGN(pgd_sz)
> 
> [...]

Applied to next, thanks!

[1/3] KVM: arm64: Add flags to kvm_hyp_memcache
      https://git.kernel.org/kvmarm/kvmarm/c/cf2d228da9a8
[2/3] KVM: arm64: Distinct pKVM teardown memcache for stage-2
      https://git.kernel.org/kvmarm/kvmarm/c/8c0d7d14c5cd
[3/3] KVM: arm64: Count pKVM stage-2 usage in secondary pagetable stats
      https://git.kernel.org/kvmarm/kvmarm/c/79ea66231599

--
Best,
Oliver