[PATCH 0/5] KVM: PPC: Book3S HV: Update debug timing code
Fabiano Rosas
farosas at linux.ibm.com
Wed May 25 23:05:49 AEST 2022
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
More information about the Linuxppc-dev
mailing list