Define and print HV cpuid flag on i386.
authorsf <sf@openbsd.org>
Thu, 15 Jan 2015 13:58:55 +0000 (13:58 +0000)
committersf <sf@openbsd.org>
Thu, 15 Jan 2015 13:58:55 +0000 (13:58 +0000)
This is set by many hypervisors, including kvm, vmware, hyper-v.

sys/arch/i386/i386/machdep.c
sys/arch/i386/include/specialreg.h

index ec638cd..8092e8c 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: machdep.c,v 1.561 2015/01/12 16:33:31 deraadt Exp $   */
+/*     $OpenBSD: machdep.c,v 1.562 2015/01/15 13:58:55 sf Exp $        */
 /*     $NetBSD: machdep.c,v 1.214 1996/11/10 03:16:17 thorpej Exp $    */
 
 /*-
@@ -1036,6 +1036,7 @@ const struct cpu_cpuid_feature i386_cpuid_ecxfeatures[] = {
        { CPUIDECX_AVX,         "AVX" },
        { CPUIDECX_F16C,        "F16C" },
        { CPUIDECX_RDRAND,      "RDRAND" },
+       { CPUIDECX_HV,          "HV" },
 };
 
 const struct cpu_cpuid_feature i386_ecpuid_ecxfeatures[] = {
index e145d16..da22d51 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: specialreg.h,v 1.47 2014/07/03 21:15:28 matthew Exp $ */
+/*     $OpenBSD: specialreg.h,v 1.48 2015/01/15 13:58:55 sf Exp $      */
 /*     $NetBSD: specialreg.h,v 1.7 1994/10/27 04:16:26 cgd Exp $       */
 
 /*-
 #define        CPUIDECX_AVX    0x10000000      /* Advanced Vector Extensions */
 #define        CPUIDECX_F16C   0x20000000      /* 16bit fp conversion  */
 #define        CPUIDECX_RDRAND 0x40000000      /* RDRAND instruction  */
+#define        CPUIDECX_HV     0x80000000      /* Running on hypervisor */
 
 /*
  * "Structured Extended Feature Flags Parameters" (CPUID function 0x7, leaf 0)