[Devel] [PATCH RHEL7 COMMIT] arch: mask cpuid 0x00000007 features in /proc/cpuinfo

Konstantin Khorenko khorenko at virtuozzo.com
Tue Oct 20 09:00:23 PDT 2015


The commit is pushed to "branch-rh7-3.10.0-229.7.2.vz7.9.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-229.7.2.vz7.8.9
------>
commit a112644ac9b0d30b4da133badab1caf2015da6e8
Author: Vladimir Davydov <vdavydov at virtuozzo.com>
Date:   Tue Oct 20 20:00:23 2015 +0400

    arch: mask cpuid 0x00000007 features in /proc/cpuinfo
    
    Port diff-arch-x86-mask-cpuid-0x00000007-features-in-_proc_cpuinfo
    
    https://jira.sw.ru/browse/PSBM-30880
    
    Signed-off-by: Vladimir Davydov <vdavydov at parallels.com>
    
    =============================================================================
    
    https://jira.sw.ru/browse/PSBM-33638
    
    Signed-off-by: Vladimir Davydov <vdavydov at virtuozzo.com>
---
 arch/x86/kernel/cpu/proc.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/x86/kernel/cpu/proc.c b/arch/x86/kernel/cpu/proc.c
index ee32933..e5087b7 100644
--- a/arch/x86/kernel/cpu/proc.c
+++ b/arch/x86/kernel/cpu/proc.c
@@ -81,6 +81,11 @@ static void init_cpu_flags(void *dummy)
 		flags->val[0] &= edx;
 	}
 
+	if (c->cpuid_level >= 0x00000007) {
+		__do_cpuid_fault(0x00000007, 0, &eax, &ebx, &ecx, &edx);
+		flags->val[9] &= ebx;
+	}
+
 	if ((c->extended_cpuid_level & 0xffff0000) == 0x80000000 &&
 	    c->extended_cpuid_level >= 0x80000001) {
 		__do_cpuid_fault(0x80000001, 0, &eax, &ebx, &ecx, &edx);



More information about the Devel mailing list