virt: detect bhyve (FreeBSD hypervisor) (#3840)
The CPUID and DMI vendor strings do not seem to be documented. Values were found experimentally and by inspecting the source code.
This commit is contained in:
committed by
Zbigniew Jędrzejewski-Szmek
parent
494294d6f8
commit
aa0c34279e
@@ -49,6 +49,8 @@ static int detect_vm_cpuid(void) {
|
||||
{ "VMwareVMware", VIRTUALIZATION_VMWARE },
|
||||
/* http://msdn.microsoft.com/en-us/library/ff542428.aspx */
|
||||
{ "Microsoft Hv", VIRTUALIZATION_MICROSOFT },
|
||||
/* https://wiki.freebsd.org/bhyve */
|
||||
{ "bhyve bhyve ", VIRTUALIZATION_BHYVE },
|
||||
};
|
||||
|
||||
uint32_t eax, ecx;
|
||||
@@ -178,6 +180,8 @@ static int detect_vm_dmi(void) {
|
||||
{ "Xen", VIRTUALIZATION_XEN },
|
||||
{ "Bochs", VIRTUALIZATION_BOCHS },
|
||||
{ "Parallels", VIRTUALIZATION_PARALLELS },
|
||||
/* https://wiki.freebsd.org/bhyve */
|
||||
{ "BHYVE", VIRTUALIZATION_BHYVE },
|
||||
};
|
||||
unsigned i;
|
||||
int r;
|
||||
@@ -502,6 +506,7 @@ static const char *const virtualization_table[_VIRTUALIZATION_MAX] = {
|
||||
[VIRTUALIZATION_MICROSOFT] = "microsoft",
|
||||
[VIRTUALIZATION_ZVM] = "zvm",
|
||||
[VIRTUALIZATION_PARALLELS] = "parallels",
|
||||
[VIRTUALIZATION_BHYVE] = "bhyve",
|
||||
[VIRTUALIZATION_VM_OTHER] = "vm-other",
|
||||
|
||||
[VIRTUALIZATION_SYSTEMD_NSPAWN] = "systemd-nspawn",
|
||||
|
||||
Reference in New Issue
Block a user