On 2/4/2019 11:04 AM, Borislav Petkov wrote:
On Mon, Feb 04, 2019 at 10:57:32AM -0500, Liang, Kan wrote:


On 2/4/2019 10:44 AM, Peter Zijlstra wrote:
On Mon, Feb 04, 2019 at 04:38:27PM +0100, Peter Zijlstra wrote:
+static const struct x86_cpu_desc isolation_ucodes[] = {
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_MOBILE,       9, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_MOBILE,      10, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_MOBILE,      11, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_MOBILE,      12, 0x0000004e),

+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_DESKTOP,     10, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_DESKTOP,     11, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_DESKTOP,     12, 0x0000004e),
+       INTEL_CPU_DESC(INTEL_FAM6_KABYLAKE_DESKTOP,     13, 0x0000004e),

Do we want a special stepping (0 / -1) to be able to denote 'all' ?


Something like as below?
#define X86_STEPPING_ANY        0xff

As my understanding, the microcode version for each stepping is independent
and irrelevant.

Huh?

Why are we looking at the stepping then?

x86_match_cpu_with_stepping() <---


I mean that the microcode version number is irrelevant between stepping.
Let's use SKL server as an example.
+       INTEL_CPU_DESC(INTEL_FAM6_SKYLAKE_X,             3, 0x00000021),
+       INTEL_CPU_DESC(INTEL_FAM6_SKYLAKE_X,             4, 0x00000000),

We need the function to check the min microcode version number for each stepping.


Thanks,
Kan

Reply via email to