2021-07-27 10:35:10

by Paolo Bonzini

[permalink] [raw]
Subject: [PATCH] KVM: ARM: count remote TLB flushes

KVM/ARM has an architecture-specific implementation of
kvm_flush_remote_tlbs; however, unlike the generic one,
it does not count the flushes in kvm->stat.remote_tlb_flush,
so that it inexorably remained stuck to zero.

Signed-off-by: Paolo Bonzini <[email protected]>
---
arch/arm64/kvm/mmu.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c
index c10207fed2f3..6cf16b43bfcc 100644
--- a/arch/arm64/kvm/mmu.c
+++ b/arch/arm64/kvm/mmu.c
@@ -81,6 +81,7 @@ static bool memslot_is_logging(struct kvm_memory_slot *memslot)
void kvm_flush_remote_tlbs(struct kvm *kvm)
{
kvm_call_hyp(__kvm_tlb_flush_vmid, &kvm->arch.mmu);
+ ++kvm->stat.generic.remote_tlb_flush;
}

static bool kvm_is_device_pfn(unsigned long pfn)
--
2.31.1



2021-07-28 19:04:40

by Oliver Upton

[permalink] [raw]
Subject: Re: [PATCH] KVM: ARM: count remote TLB flushes

On Tue, Jul 27, 2021 at 3:33 AM Paolo Bonzini <[email protected]> wrote:
>
> KVM/ARM has an architecture-specific implementation of
> kvm_flush_remote_tlbs; however, unlike the generic one,
> it does not count the flushes in kvm->stat.remote_tlb_flush,
> so that it inexorably remained stuck to zero.
>
> Signed-off-by: Paolo Bonzini <[email protected]>

Reviewed-by: Oliver Upton <[email protected]>

> ---
> arch/arm64/kvm/mmu.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c
> index c10207fed2f3..6cf16b43bfcc 100644
> --- a/arch/arm64/kvm/mmu.c
> +++ b/arch/arm64/kvm/mmu.c
> @@ -81,6 +81,7 @@ static bool memslot_is_logging(struct kvm_memory_slot *memslot)
> void kvm_flush_remote_tlbs(struct kvm *kvm)
> {
> kvm_call_hyp(__kvm_tlb_flush_vmid, &kvm->arch.mmu);
> + ++kvm->stat.generic.remote_tlb_flush;
> }
>
> static bool kvm_is_device_pfn(unsigned long pfn)
> --
> 2.31.1
>
> _______________________________________________
> kvmarm mailing list
> [email protected]
> https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

2021-08-02 13:46:48

by Marc Zyngier

[permalink] [raw]
Subject: Re: [PATCH] KVM: ARM: count remote TLB flushes

On Tue, 27 Jul 2021 12:32:51 +0200, Paolo Bonzini wrote:
> KVM/ARM has an architecture-specific implementation of
> kvm_flush_remote_tlbs; however, unlike the generic one,
> it does not count the flushes in kvm->stat.remote_tlb_flush,
> so that it inexorably remained stuck to zero.

Applied to next, thanks!

[1/1] KVM: ARM: count remote TLB flushes
commit: 38f703663d4c82ead5b51b8860deeef19d6dcb6d

Cheers,

M.
--
Without deviation from the norm, progress is not possible.