aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Bowling <kbowling@FreeBSD.org>2024-08-28 09:31:35 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2024-09-04 00:46:48 +0000
commit34f40baca6413a85e2531d21a616f1b2042c08cd (patch)
treeeadf374274d8741e44f1551bd75488eab81a3fee
parent898f6d26deb8408252444d48bf210cb90cb993de (diff)
x86: Detect NVMM hypervisor
(cherry picked from commit f622dc5daecc5c05504cfc605b6f2d66a3bd90e8)
-rw-r--r--sys/kern/subr_param.c1
-rw-r--r--sys/sys/systm.h2
-rw-r--r--sys/x86/x86/identcpu.c1
3 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/subr_param.c b/sys/kern/subr_param.c
index b7dbf606f492..c0a4ac747d00 100644
--- a/sys/kern/subr_param.c
+++ b/sys/kern/subr_param.c
@@ -158,6 +158,7 @@ static const char *const vm_guest_sysctl_names[] = {
[VM_GUEST_BHYVE] = "bhyve",
[VM_GUEST_VBOX] = "vbox",
[VM_GUEST_PARALLELS] = "parallels",
+ [VM_GUEST_NVMM] = "nvmm",
[VM_LAST] = NULL
};
CTASSERT(nitems(vm_guest_sysctl_names) - 1 == VM_LAST);
diff --git a/sys/sys/systm.h b/sys/sys/systm.h
index eb690b1cf4b4..581b981ef9e0 100644
--- a/sys/sys/systm.h
+++ b/sys/sys/systm.h
@@ -81,7 +81,7 @@ extern u_long maxphys; /* max raw I/O transfer size */
*/
enum VM_GUEST { VM_GUEST_NO = 0, VM_GUEST_VM, VM_GUEST_XEN, VM_GUEST_HV,
VM_GUEST_VMWARE, VM_GUEST_KVM, VM_GUEST_BHYVE, VM_GUEST_VBOX,
- VM_GUEST_PARALLELS, VM_LAST };
+ VM_GUEST_PARALLELS, VM_GUEST_NVMM, VM_LAST };
#endif /* KERNEL */
diff --git a/sys/x86/x86/identcpu.c b/sys/x86/x86/identcpu.c
index 7df20053a9d1..36056b85101b 100644
--- a/sys/x86/x86/identcpu.c
+++ b/sys/x86/x86/identcpu.c
@@ -1361,6 +1361,7 @@ static struct {
{ "KVMKVMKVM", VM_GUEST_KVM }, /* KVM */
{ "bhyve bhyve ", VM_GUEST_BHYVE }, /* bhyve */
{ "VBoxVBoxVBox", VM_GUEST_VBOX }, /* VirtualBox */
+ { "___ NVMM ___", VM_GUEST_NVMM }, /* NVMM */
};
static void
  翻译: