Re: [PATCH V6 2/5] perf/x86/kvm: Avoid unnecessary work in guest filtering

From: Borislav Petkov
Date: Mon Feb 04 2019 - 13:15:20 EST

On Mon, Feb 04, 2019 at 11:55:27AM -0500, Liang, Kan wrote:

> We cannot apply X86_STEPPING_ANY to ignore the stepping. There will be
> problems for 0-8 stepping for KABYLAKE_MOBILE.

So why are we even doing this new "interface"
x86_cpu_has_min_microcode_rev() if even at the conversion stage it shows
that it is inadequate?

> I think what we need is x86_match_cpu_with_stepping_range().
> But I don't think it is worth enabling it just for this rare case.

Sounds to me like you wanna go back to the drawing board after having
evaluated all the use cases.

And yes, I can imagine:

+struct x86_cpu_desc {
+ __u8 x86; /* CPU family */
+ __u8 x86_vendor; /* CPU vendor */
+ __u8 x86_model;
+ __u8 x86_min_stepping;
+ __u8 x86_max_stepping;
+ __u32 x86_microcode_rev;

along with the usage:

INTEL_CPU_DESC(mod, min_step, max_step, rev)

to make it more elegant.

Question is, can you have a given microcode revision X applying to
multiple revisions?

If yes, the above should work...


Good mailing practices for 400: avoid top-posting and trim the reply.