Re: [PATCH 0/1] KVM: x86/vPMU: Speed up vmexit for AMD Zen 4 CPUs

From: Sean Christopherson
Date: Thu Nov 09 2023 - 20:14:10 EST


On Fri, Nov 10, 2023, Sean Christopherson wrote:
> On Thu, Nov 09, 2023, Jim Mattson wrote:
> > On Thu, Nov 9, 2023 at 3:42 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote:
> > > static inline bool pmc_is_eventsel_match(struct kvm_pmc *pmc, u64 eventsel)
> > > {
> > > return !((pmc->eventsel ^ eventsel) & AMD64_RAW_EVENT_MASK_NB);
> > > }
> >
> > The top nybble of AMD's 3-nybble event select collides with Intel's
> > IN_TX and IN_TXCP bits. I think we can assert that the vCPU can't be
> > in a transaction if KVM is emulating an instruction, but this probably
> > merits a comment.
>
> Argh, more pre-existing crud. This is silly, the vendor mask is already in
> kvm_pmu_ops.EVENTSEL_EVENT. What's one more patch...

Ah, I see what your saying. Checking the bits is actually correct, probably through
sheer dumb luck. I'll expand the comment to cover that and the reserved bits.