aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2011-04-28 22:23:39 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2011-04-28 22:23:39 +0000
commitc34e9dbee11c6e0a20362595a3d511bef146957e (patch)
tree2426ae1d7f93bafff20e4a027711119c6e1978b8
parentefa439f740eaf071feecd68b2d0906f1f9dd747c (diff)
downloadsrc-c34e9dbee11c6e0a20362595a3d511bef146957e.tar.gz
src-c34e9dbee11c6e0a20362595a3d511bef146957e.zip
Define "Hypervisor Present" bit. This bit is used by several hypervisors to
identify CPUs running under emulation. Currently QEMU-KVM, Xen-HVM, VMware, and MS Hyper-V are known to set this bit. MFC after: 3 days
Notes
Notes: svn path=/head/; revision=221188
-rw-r--r--sys/amd64/amd64/identcpu.c2
-rw-r--r--sys/amd64/include/specialreg.h1
-rw-r--r--sys/i386/i386/identcpu.c2
-rw-r--r--sys/i386/include/specialreg.h1
4 files changed, 4 insertions, 2 deletions
diff --git a/sys/amd64/amd64/identcpu.c b/sys/amd64/amd64/identcpu.c
index c1e0220a0ba1..1da4181f5ea4 100644
--- a/sys/amd64/amd64/identcpu.c
+++ b/sys/amd64/amd64/identcpu.c
@@ -296,7 +296,7 @@ printcpuinfo(void)
"\035<b28>"
"\036<b29>"
"\037<b30>"
- "\040<b31>"
+ "\040HV" /* Hypervisor */
);
}
diff --git a/sys/amd64/include/specialreg.h b/sys/amd64/include/specialreg.h
index 22ae08ced83c..9428dd906125 100644
--- a/sys/amd64/include/specialreg.h
+++ b/sys/amd64/include/specialreg.h
@@ -134,6 +134,7 @@
#define CPUID2_MOVBE 0x00400000
#define CPUID2_POPCNT 0x00800000
#define CPUID2_AESNI 0x02000000
+#define CPUID2_HV 0x80000000
/*
* Important bits in the Thermal and Power Management flags
diff --git a/sys/i386/i386/identcpu.c b/sys/i386/i386/identcpu.c
index 59b4b9cb29c2..cd90d478ee43 100644
--- a/sys/i386/i386/identcpu.c
+++ b/sys/i386/i386/identcpu.c
@@ -773,7 +773,7 @@ printcpuinfo(void)
"\035<b28>"
"\036<b29>"
"\037<b30>"
- "\040<b31>"
+ "\040HV" /* Hypervisor */
);
}
diff --git a/sys/i386/include/specialreg.h b/sys/i386/include/specialreg.h
index 2cd1f8f496d3..cfb205f17ff0 100644
--- a/sys/i386/include/specialreg.h
+++ b/sys/i386/include/specialreg.h
@@ -131,6 +131,7 @@
#define CPUID2_MOVBE 0x00400000
#define CPUID2_POPCNT 0x00800000
#define CPUID2_AESNI 0x02000000
+#define CPUID2_HV 0x80000000
/*
* Important bits in the Thermal and Power Management flags