Excerpts from Fabiano Rosas's message of October 16, 2021 10:38 pm: > Nicholas Piggin <npiggin@xxxxxxxxx> writes: > >> Provide a config option that controls the workaround added by commit >> 63279eeb7f93 ("KVM: PPC: Book3S HV: Always save guest pmu for guest >> capable of nesting"). The option defaults to y for now, but is expected >> to go away within a few releases. >> >> Nested capable guests running with the earlier commit ("KVM: PPC: Book3S >> HV Nested: Indicate guest PMU in-use in VPA") will now indicate the PMU > > I think the commit reference is now: 178266389794 (KVM: PPC: Book3S HV > Nested: Reflect guest PMU in-use to L0 when guest SPRs are live) Ah yes good point, would be good to that in the changelog. I guess we can add a References: tag as well, just in case anybody mines this stuff. > >> in-use status of their guests, which means the parent does not need to >> unconditionally save the PMU for nested capable guests. >> >> After this latest round of performance optimisations, this option costs >> about 540 cycles or 10% entry/exit performance on a POWER9 nested-capable >> guest. >> >> Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx> >> --- >> arch/powerpc/kvm/Kconfig | 15 +++++++++++++++ >> arch/powerpc/kvm/book3s_hv.c | 10 ++++++++-- >> 2 files changed, 23 insertions(+), 2 deletions(-) >> >> diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig >> index ff581d70f20c..1e7aae522be8 100644 >> --- a/arch/powerpc/kvm/Kconfig >> +++ b/arch/powerpc/kvm/Kconfig >> @@ -130,6 +130,21 @@ config KVM_BOOK3S_HV_EXIT_TIMING >> >> If unsure, say N. >> >> +config KVM_BOOK3S_HV_NESTED_PMU_WORKAROUND >> + bool "Nested L0 host workaround for L1 KVM host PMU handling bug" if EXPERT >> + depends on KVM_BOOK3S_HV_POSSIBLE >> + default !EXPERT >> + help >> + Old nested HV capable Linux guests have a bug where the don't > > s/the/they/ > > Reviewed-by: Fabiano Rosas <farosas@xxxxxxxxxxxxx> > Good catch. Thanks, Nick