public inbox for linux-s390@vger.kernel.org
 help / color / mirror / Atom feed
From: Niklas Schnelle <schnelle@linux.ibm.com>
To: Nico Boehr <nrb@linux.ibm.com>,
	borntraeger@linux.ibm.com, frankja@linux.ibm.com,
	imbrenda@linux.ibm.com, david@redhat.com
Cc: kvm@vger.kernel.org, linux-s390@vger.kernel.org
Subject: Re: [PATCH v3 0/2] KVM: s390: add counters for vsie performance
Date: Tue, 05 Sep 2023 09:53:40 +0200	[thread overview]
Message-ID: <a41f6fc29032d345b3c2f24e19f32282dd627e5c.camel@linux.ibm.com> (raw)
In-Reply-To: <20230904130140.22006-1-nrb@linux.ibm.com>

On Mon, 2023-09-04 at 15:01 +0200, Nico Boehr wrote:
> v3:
> ---
> * rename te -> entry (David)
> * add counters for gmap reuse and gmap create (David)
> 
> v2:
> ---
> * also count shadowing of pages (Janosch)
> * fix naming of counters (Janosch)
> * mention shadowing of multiple levels is counted in each level (Claudio)
> * fix inaccuate commit description regarding gmap notifier (Claudio)
> 
> When running a guest-3 via VSIE, guest-1 needs to shadow the page table
> structures of guest-2.
> 
> To reflect changes of the guest-2 in the _shadowed_ page table structures,
> the _shadowing_ sturctures sometimes need to be rebuilt. Since this is a
> costly operation, it should be avoided whenever possible.
> 
> This series adds kvm stat counters to count the number of shadow gmaps
> created and a tracepoint whenever something is unshadowed. This is a first
> step to try and improve VSIE performance.
> 
> Please note that "KVM: s390: add tracepoint in gmap notifier" has some
> checkpatch --strict findings. I did not fix these since the tracepoint
> definition would then look completely different from all the other
> tracepoints in arch/s390/kvm/trace-s390.h. If you want me to fix that,
> please let me know.
> 
> While developing this, a question regarding the stat counters came up:
> there's usually no locking involved when the stat counters are incremented.
> On s390, GCC accidentally seems to do the right thing(TM) most of the time
> by generating a agsi instruction (which should be atomic given proper
> alignment). However, it's not guaranteed, so would we rather want to go
> with an atomic for the stat counters to avoid losing events? Or do we just
> accept the fact that we might loose events sometimes? Is there anything
> that speaks against having an atomic in kvm_stat?
> 

FWIW the PCI counters (/sys/kernel/debug/pci/<dev>/statistics) use
atomic64_add(). Also, s390's memory model is strong enough that these
are actually just normal loads/stores/adds (see
arch/s390/include/asm/atomic_ops.h) with the generic atomic64_xx()
adding debug instrumentation.

  parent reply	other threads:[~2023-09-05 16:26 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-04 13:01 [PATCH v3 0/2] KVM: s390: add counters for vsie performance Nico Boehr
2023-09-04 13:01 ` [PATCH v3 1/2] KVM: s390: add stat counter for shadow gmap events Nico Boehr
2023-09-06  7:35   ` David Hildenbrand
2023-09-04 13:01 ` [PATCH v3 2/2] KVM: s390: add tracepoint in gmap notifier Nico Boehr
2023-09-05  7:53 ` Niklas Schnelle [this message]
2023-09-05  8:33   ` [PATCH v3 0/2] KVM: s390: add counters for vsie performance Nico Boehr
2023-09-06  7:37     ` David Hildenbrand
2023-09-07  8:50       ` Nico Boehr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a41f6fc29032d345b3c2f24e19f32282dd627e5c.camel@linux.ibm.com \
    --to=schnelle@linux.ibm.com \
    --cc=borntraeger@linux.ibm.com \
    --cc=david@redhat.com \
    --cc=frankja@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=nrb@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox