linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] KVM: PPC: Book3S HV: Update debug timing code
@ 2022-05-25 13:05 Fabiano Rosas
  2022-05-25 13:05 ` [PATCH 1/5] KVM: PPC: Book3S HV: Fix "rm_exit" entry in debugfs timings Fabiano Rosas
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Fabiano Rosas @ 2022-05-25 13:05 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: npiggin, kvm-ppc

We have some debug information at /sys/kernel/debug/kvm/<vm>/vcpu#/timings
which shows the time it takes to run various parts of the code.

That infrastructure was written in the P8 timeframe and wasn't updated
along with the guest entry point changes for P9.

Ideally we would be able to just add new/different accounting points
to the code as it changes over time but since the P8 and P9 entry
points are different code paths we first need to separate them from
each other. This series alters KVM Kconfig to make that distinction.

Currently:
CONFIG_KVM_BOOK3S_HV_EXIT_TIMING - timing infrastructure in asm (P8 only)
				   timing infrastructure in C (P9 only)
				   generic timing variables (P8/P9)
				   debugfs code
                                   timing points for P8

After this series:
CONFIG_KVM_BOOK3S_HV_EXIT_TIMING - generic timing variables (P8/P9)
				   debugfs code

CONFIG_KVM_BOOK3S_HV_P8_TIMING - timing infrastructure in asm (P8 only)
			         timing points for P8

CONFIG_KVM_BOOK3S_HV_P9_TIMING - timing infrastructure in C (P9 only)
			         timing points for P9

The new Kconfig rules are:

a) CONFIG_KVM_BOOK3S_HV_P8_TIMING selects CONFIG_KVM_BOOK3S_HV_EXIT_TIMING,
   resulting in the previous behavior. Tested on P8.

b) CONFIG_KVM_BOOK3S_HV_P9_TIMING selects CONFIG_KVM_BOOK3S_HV_EXIT_TIMING,
   resulting in the new behavior. Tested on P9.

c) CONFIG_KVM_BOOK3S_HV_P8_TIMING and CONFIG_KVM_BOOK3S_HV_P9_TIMING
   are mutually exclusive. If both are set, P9 takes precedence.

Fabiano Rosas (5):
  KVM: PPC: Book3S HV: Fix "rm_exit" entry in debugfs timings
  KVM: PPC: Book3S HV: Add a new config for P8 debug timing
  KVM: PPC: Book3S HV: Decouple the debug timing from the P8 entry path
  KVM: PPC: Book3S HV: Expose timing functions to module code
  KVM: PPC: Book3S HV: Provide more detailed timings for P9 entry path

 arch/powerpc/include/asm/kvm_host.h     | 10 +++++++
 arch/powerpc/kernel/asm-offsets.c       |  2 +-
 arch/powerpc/kvm/Kconfig                | 19 ++++++++++++-
 arch/powerpc/kvm/book3s_hv.c            | 26 ++++++++++++++++--
 arch/powerpc/kvm/book3s_hv.h            | 10 +++++++
 arch/powerpc/kvm/book3s_hv_p9_entry.c   | 36 +++++--------------------
 arch/powerpc/kvm/book3s_hv_rmhandlers.S | 24 ++++++++---------
 7 files changed, 82 insertions(+), 45 deletions(-)

-- 
2.35.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-07-09 10:19 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-25 13:05 [PATCH 0/5] KVM: PPC: Book3S HV: Update debug timing code Fabiano Rosas
2022-05-25 13:05 ` [PATCH 1/5] KVM: PPC: Book3S HV: Fix "rm_exit" entry in debugfs timings Fabiano Rosas
2022-05-25 13:05 ` [PATCH 2/5] KVM: PPC: Book3S HV: Add a new config for P8 debug timing Fabiano Rosas
2022-05-25 13:05 ` [PATCH 3/5] KVM: PPC: Book3S HV: Decouple the debug timing from the P8 entry path Fabiano Rosas
2022-05-25 13:05 ` [PATCH 4/5] KVM: PPC: Book3S HV: Expose timing functions to module code Fabiano Rosas
2022-05-25 13:05 ` [PATCH 5/5] KVM: PPC: Book3S HV: Provide more detailed timings for P9 entry path Fabiano Rosas
2022-07-09 10:14 ` [PATCH 0/5] KVM: PPC: Book3S HV: Update debug timing code Michael Ellerman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).