Messages in this thread | | | Date | Fri, 7 Jan 2022 17:59:49 +0100 | Subject | Re: [PATCH RESEND] KVM: x86/pmu: Make top-down.slots event unavailable in supported leaf | From | Paolo Bonzini <> |
| |
On 1/5/22 06:07, Like Xu wrote: > + /* > + * The 8th Intel pre-defined architectural event (Topdown Slots) will be supported > + * if the 4th fixed counter exists && EAX[31:24] > 7 && EBX[7] = 0. > + * > + * Currently, KVM needs to set EAX[31:24] < 8 or EBX[7] == 1 > + * to make this event unavailable in a consistent way. > + */ > + if (edx.split.num_counters_fixed < 4) { > + if (eax.split.mask_length > 7) > + eax.split.mask_length--; > + if (eax.split.mask_length > 7) > + cap.events_mask |= BIT_ULL(7); > + } > +
The first "> 7" is wrong; it should be == 8, shouldn't it? Something like
if (edx.split.num_counters_fixed < 4 && eax.split.mask_length >= 8) { if (eax.split.mask_length == 8) eax.split.mask_length--; else cap.events_mask |= BIT_ULL(7); }
is what you mean, I think?
Paolo
| |