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? [...] > > 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.