lkml.org 
[lkml]   [2018]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] x86: cpufeature: move processor tracing out of scattered features
    Date
    Processor tracing is already enumerated in word 9 (CPUID[7,0].EBX),
    so do not duplicate it in the scattered features word.

    Besides being more tidy, this will be useful for KVM when it presents
    processor tracing to the guests. KVM selects host features that are
    supported by both the host kernel (depending on command line options,
    CPU errata, or whatever) and KVM. Whenever a full feature word exists,
    KVM's code is written in the expectation that the CPUID bit number
    matches the X86_FEATURE_* bit number, but this is not the case for
    X86_FEATURE_INTEL_PT.

    Cc: Luwei Kang <luwei.kang@intel.com>
    Cc: x86@kernel.org
    Cc: Radim Krčmář <rkrcmar@redhat.com>
    Cc: Borislav Petkov <bp@suse.de>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    ---
    arch/x86/include/asm/cpufeatures.h | 2 +-
    arch/x86/kernel/cpu/scattered.c | 1 -
    2 files changed, 1 insertion(+), 2 deletions(-)

    diff --git a/arch/x86/include/asm/cpufeatures.h b/arch/x86/include/asm/cpufeatures.h
    index 800104c8a3ed..056892021a7f 100644
    --- a/arch/x86/include/asm/cpufeatures.h
    +++ b/arch/x86/include/asm/cpufeatures.h
    @@ -203,7 +203,6 @@
    #define X86_FEATURE_SME ( 7*32+10) /* AMD Secure Memory Encryption */

    #define X86_FEATURE_INTEL_PPIN ( 7*32+14) /* Intel Processor Inventory Number */
    -#define X86_FEATURE_INTEL_PT ( 7*32+15) /* Intel Processor Trace */
    #define X86_FEATURE_AVX512_4VNNIW ( 7*32+16) /* AVX-512 Neural Network Instructions */
    #define X86_FEATURE_AVX512_4FMAPS ( 7*32+17) /* AVX-512 Multiply Accumulation Single precision */

    @@ -242,6 +241,7 @@
    #define X86_FEATURE_AVX512IFMA ( 9*32+21) /* AVX-512 Integer Fused Multiply-Add instructions */
    #define X86_FEATURE_CLFLUSHOPT ( 9*32+23) /* CLFLUSHOPT instruction */
    #define X86_FEATURE_CLWB ( 9*32+24) /* CLWB instruction */
    +#define X86_FEATURE_INTEL_PT ( 9*32+25) /* Intel Processor Trace */
    #define X86_FEATURE_AVX512PF ( 9*32+26) /* AVX-512 Prefetch */
    #define X86_FEATURE_AVX512ER ( 9*32+27) /* AVX-512 Exponential and Reciprocal */
    #define X86_FEATURE_AVX512CD ( 9*32+28) /* AVX-512 Conflict Detection */
    diff --git a/arch/x86/kernel/cpu/scattered.c b/arch/x86/kernel/cpu/scattered.c
    index 05459ad3db46..d0e69769abfd 100644
    --- a/arch/x86/kernel/cpu/scattered.c
    +++ b/arch/x86/kernel/cpu/scattered.c
    @@ -21,7 +21,6 @@ struct cpuid_bit {
    static const struct cpuid_bit cpuid_bits[] = {
    { X86_FEATURE_APERFMPERF, CPUID_ECX, 0, 0x00000006, 0 },
    { X86_FEATURE_EPB, CPUID_ECX, 3, 0x00000006, 0 },
    - { X86_FEATURE_INTEL_PT, CPUID_EBX, 25, 0x00000007, 0 },
    { X86_FEATURE_AVX512_4VNNIW, CPUID_EDX, 2, 0x00000007, 0 },
    { X86_FEATURE_AVX512_4FMAPS, CPUID_EDX, 3, 0x00000007, 0 },
    { X86_FEATURE_CAT_L3, CPUID_EBX, 1, 0x00000010, 0 },
    --
    1.8.3.1
    \
     
     \ /
      Last update: 2018-01-16 16:42    [W:2.193 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site