Borislav Petkov
2016-Mar-29 15:41 UTC
[PATCH 02/10] x86/cpufeature: Kill cpu_has_hypervisor
From: Borislav Petkov <bp at suse.de> Use boot_cpu_has() instead. Signed-off-by: Borislav Petkov <bp at suse.de> Cc: virtualization at lists.linux-foundation.org Cc: sparmaintainer at unisys.com --- arch/x86/events/intel/cstate.c | 2 +- arch/x86/events/intel/uncore.c | 2 +- arch/x86/include/asm/cpufeature.h | 1 - arch/x86/kernel/cpu/vmware.c | 2 +- arch/x86/kernel/kvm.c | 2 +- drivers/staging/unisys/visorbus/visorchipset.c | 2 +- 6 files changed, 5 insertions(+), 6 deletions(-) diff --git a/arch/x86/events/intel/cstate.c b/arch/x86/events/intel/cstate.c index 7946c4231169..d5045c8e2e63 100644 --- a/arch/x86/events/intel/cstate.c +++ b/arch/x86/events/intel/cstate.c @@ -677,7 +677,7 @@ static int __init cstate_pmu_init(void) { int err; - if (cpu_has_hypervisor) + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) return -ENODEV; err = cstate_init(); diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c index 7012d18bb293..3f6d8b5672d5 100644 --- a/arch/x86/events/intel/uncore.c +++ b/arch/x86/events/intel/uncore.c @@ -1383,7 +1383,7 @@ static int __init intel_uncore_init(void) if (boot_cpu_data.x86_vendor != X86_VENDOR_INTEL) return -ENODEV; - if (cpu_has_hypervisor) + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) return -ENODEV; max_packages = topology_max_packages(); diff --git a/arch/x86/include/asm/cpufeature.h b/arch/x86/include/asm/cpufeature.h index fee7a6efcd2d..3aea54ecabfd 100644 --- a/arch/x86/include/asm/cpufeature.h +++ b/arch/x86/include/asm/cpufeature.h @@ -136,7 +136,6 @@ extern const char * const x86_bug_flags[NBUGINTS*32]; #define cpu_has_xsave boot_cpu_has(X86_FEATURE_XSAVE) #define cpu_has_xsaves boot_cpu_has(X86_FEATURE_XSAVES) #define cpu_has_osxsave boot_cpu_has(X86_FEATURE_OSXSAVE) -#define cpu_has_hypervisor boot_cpu_has(X86_FEATURE_HYPERVISOR) /* * Do not add any more of those clumsy macros - use static_cpu_has() for * fast paths and boot_cpu_has() otherwise! diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c index 364e58346897..8cac429b6a1d 100644 --- a/arch/x86/kernel/cpu/vmware.c +++ b/arch/x86/kernel/cpu/vmware.c @@ -94,7 +94,7 @@ static void __init vmware_platform_setup(void) */ static uint32_t __init vmware_platform(void) { - if (cpu_has_hypervisor) { + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) { unsigned int eax; unsigned int hyper_vendor_id[3]; diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c index 807950860fb7..dc1207e2f193 100644 --- a/arch/x86/kernel/kvm.c +++ b/arch/x86/kernel/kvm.c @@ -522,7 +522,7 @@ static noinline uint32_t __kvm_cpuid_base(void) if (boot_cpu_data.cpuid_level < 0) return 0; /* So we don't blow up on old processors */ - if (cpu_has_hypervisor) + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) return hypervisor_cpuid_base("KVMKVMKVM\0\0\0", 0); return 0; diff --git a/drivers/staging/unisys/visorbus/visorchipset.c b/drivers/staging/unisys/visorbus/visorchipset.c index 5fbda7b218c7..9cf4f8463c4e 100644 --- a/drivers/staging/unisys/visorbus/visorchipset.c +++ b/drivers/staging/unisys/visorbus/visorchipset.c @@ -2425,7 +2425,7 @@ static __init uint32_t visorutil_spar_detect(void) { unsigned int eax, ebx, ecx, edx; - if (cpu_has_hypervisor) { + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) { /* check the ID */ cpuid(UNISYS_SPAR_LEAF_ID, &eax, &ebx, &ecx, &edx); return (ebx == UNISYS_SPAR_ID_EBX) && -- 2.7.3
Kershner, David A
2016-Mar-29 18:03 UTC
[PATCH 02/10] x86/cpufeature: Kill cpu_has_hypervisor
> -----Original Message----- > From: Borislav Petkov [mailto:bp at alien8.de] > Sent: Tuesday, March 29, 2016 11:42 AM > To: X86 ML <x86 at kernel.org> > Cc: LKML <linux-kernel at vger.kernel.org>; virtualization at lists.linux- > foundation.org; *S-Par-Maintainer <SParMaintainer at unisys.com> > Subject: [PATCH 02/10] x86/cpufeature: Kill cpu_has_hypervisor > > From: Borislav Petkov <bp at suse.de> > > Use boot_cpu_has() instead. > > Signed-off-by: Borislav Petkov <bp at suse.de>Tested-by: David Kershner <david.kershner at unisys.com>> Cc: virtualization at lists.linux-foundation.org > Cc: sparmaintainer at unisys.com > --- > arch/x86/events/intel/cstate.c | 2 +- > arch/x86/events/intel/uncore.c | 2 +- > arch/x86/include/asm/cpufeature.h | 1 - > arch/x86/kernel/cpu/vmware.c | 2 +- > arch/x86/kernel/kvm.c | 2 +- > drivers/staging/unisys/visorbus/visorchipset.c | 2 +- > 6 files changed, 5 insertions(+), 6 deletions(-) > > diff --git a/arch/x86/events/intel/cstate.c b/arch/x86/events/intel/cstate.c > index 7946c4231169..d5045c8e2e63 100644 > --- a/arch/x86/events/intel/cstate.c > +++ b/arch/x86/events/intel/cstate.c > @@ -677,7 +677,7 @@ static int __init cstate_pmu_init(void) > { > int err; > > - if (cpu_has_hypervisor) > + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) > return -ENODEV; > > err = cstate_init(); > diff --git a/arch/x86/events/intel/uncore.c b/arch/x86/events/intel/uncore.c > index 7012d18bb293..3f6d8b5672d5 100644 > --- a/arch/x86/events/intel/uncore.c > +++ b/arch/x86/events/intel/uncore.c > @@ -1383,7 +1383,7 @@ static int __init intel_uncore_init(void) > if (boot_cpu_data.x86_vendor != X86_VENDOR_INTEL) > return -ENODEV; > > - if (cpu_has_hypervisor) > + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) > return -ENODEV; > > max_packages = topology_max_packages(); > diff --git a/arch/x86/include/asm/cpufeature.h > b/arch/x86/include/asm/cpufeature.h > index fee7a6efcd2d..3aea54ecabfd 100644 > --- a/arch/x86/include/asm/cpufeature.h > +++ b/arch/x86/include/asm/cpufeature.h > @@ -136,7 +136,6 @@ extern const char * const > x86_bug_flags[NBUGINTS*32]; > #define cpu_has_xsave > boot_cpu_has(X86_FEATURE_XSAVE) > #define cpu_has_xsaves > boot_cpu_has(X86_FEATURE_XSAVES) > #define cpu_has_osxsave > boot_cpu_has(X86_FEATURE_OSXSAVE) > -#define cpu_has_hypervisor boot_cpu_has(X86_FEATURE_HYPERVISOR) > /* > * Do not add any more of those clumsy macros - use static_cpu_has() for > * fast paths and boot_cpu_has() otherwise! > diff --git a/arch/x86/kernel/cpu/vmware.c b/arch/x86/kernel/cpu/vmware.c > index 364e58346897..8cac429b6a1d 100644 > --- a/arch/x86/kernel/cpu/vmware.c > +++ b/arch/x86/kernel/cpu/vmware.c > @@ -94,7 +94,7 @@ static void __init vmware_platform_setup(void) > */ > static uint32_t __init vmware_platform(void) > { > - if (cpu_has_hypervisor) { > + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) { > unsigned int eax; > unsigned int hyper_vendor_id[3]; > > diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c > index 807950860fb7..dc1207e2f193 100644 > --- a/arch/x86/kernel/kvm.c > +++ b/arch/x86/kernel/kvm.c > @@ -522,7 +522,7 @@ static noinline uint32_t __kvm_cpuid_base(void) > if (boot_cpu_data.cpuid_level < 0) > return 0; /* So we don't blow up on old processors */ > > - if (cpu_has_hypervisor) > + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) > return hypervisor_cpuid_base("KVMKVMKVM\0\0\0", 0); > > return 0; > diff --git a/drivers/staging/unisys/visorbus/visorchipset.c > b/drivers/staging/unisys/visorbus/visorchipset.c > index 5fbda7b218c7..9cf4f8463c4e 100644 > --- a/drivers/staging/unisys/visorbus/visorchipset.c > +++ b/drivers/staging/unisys/visorbus/visorchipset.c > @@ -2425,7 +2425,7 @@ static __init uint32_t visorutil_spar_detect(void) > { > unsigned int eax, ebx, ecx, edx; > > - if (cpu_has_hypervisor) { > + if (boot_cpu_has(X86_FEATURE_HYPERVISOR)) { > /* check the ID */ > cpuid(UNISYS_SPAR_LEAF_ID, &eax, &ebx, &ecx, &edx); > return (ebx == UNISYS_SPAR_ID_EBX) && > -- > 2.7.3