Nicholas Piggin <npiggin@xxxxxxxxx> writes: > Revert the workaround added by commit 63279eeb7f93a ("KVM: PPC: Book3S > HV: Always save guest pmu for guest capable of nesting"). > > 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 > in-use status of their guests, which means the parent does not need to > unconditionally save the PMU for nested capable guests. > > This will cause the PMU to break for nested guests when running older > nested hypervisor guests under a kernel with this change. It's unclear > there's an easy way to avoid that, so this could wait for a release or > so for the fix to filter into stable kernels. I'm not sure PMU inside nested guests is getting much use, but I don't think we can break this quite so casually :) Especially as the failure mode will be PMU counts that don't match reality, which is hard to diagnose. It took nearly a year for us to find the original bug. I think we need to hold this back for a while. We could put it under a CONFIG option, and then flip that option to off at some point in the future. cheers > index e7f8cc04944b..ab89db561c85 100644 > --- a/arch/powerpc/kvm/book3s_hv.c > +++ b/arch/powerpc/kvm/book3s_hv.c > @@ -4003,8 +4003,6 @@ static int kvmhv_p9_guest_entry(struct kvm_vcpu *vcpu, u64 time_limit, > vcpu->arch.vpa.dirty = 1; > save_pmu = lp->pmcregs_in_use; > } > - /* Must save pmu if this guest is capable of running nested guests */ > - save_pmu |= nesting_enabled(vcpu->kvm); > > kvmhv_save_guest_pmu(vcpu, save_pmu); > #ifdef CONFIG_PPC_PSERIES > -- > 2.23.0