On 8/1/23 13:48, Nico Boehr wrote:
Quoting David Hildenbrand (2023-07-27 09:37:21)
[...]
diff --git a/arch/s390/include/asm/kvm_host.h b/arch/s390/include/asm/kvm_host.h
index 2bbc3d54959d..d35e03e82d3d 100644
--- a/arch/s390/include/asm/kvm_host.h
+++ b/arch/s390/include/asm/kvm_host.h
@@ -777,6 +777,12 @@ struct kvm_vm_stat {
u64 inject_service_signal;
u64 inject_virtio;
u64 aen_forward;
+ u64 gmap_shadow_acquire;
+ u64 gmap_shadow_r1_te;
+ u64 gmap_shadow_r2_te;
+ u64 gmap_shadow_r3_te;
+ u64 gmap_shadow_sg_te;
+ u64 gmap_shadow_pg_te;
Is "te" supposed to stand for "table entry" ?
Yes.
If so, I'd suggest to just call this gmap_shadow_pg_entry etc.
Janosch, since you suggested the current naming, are you OK with _entry?
Sure
[...]
diff --git a/arch/s390/kvm/vsie.c b/arch/s390/kvm/vsie.c
index 8d6b765abf29..beb3be037722 100644
--- a/arch/s390/kvm/vsie.c
+++ b/arch/s390/kvm/vsie.c
@@ -1221,6 +1221,7 @@ static int acquire_gmap_shadow(struct kvm_vcpu *vcpu,
if (IS_ERR(gmap))
return PTR_ERR(gmap);
gmap->private = vcpu->kvm;
+ vcpu->kvm->stat.gmap_shadow_acquire++;
Do you rather want to have events for
gmap_shadow_reuse (if gmap_shadow_valid() succeeded in that function)
gmap_shadow_create (if we have to create a new one via gmap_shadow)
?
Yeah, good suggestion. I'll add that.