svn commit: r249450 - head/sys/amd64/vmm/intel
Neel Natu
neel at FreeBSD.org
Sat Apr 13 21:41:52 UTC 2013
Author: neel
Date: Sat Apr 13 21:41:51 2013
New Revision: 249450
URL: http://svnweb.freebsd.org/changeset/base/249450
Log:
Create sysctl node 'hw.vmm.vmx' and populate it with oids that expose the VMX
hardware capabilities.
Obtained from: NetApp
Modified:
head/sys/amd64/vmm/intel/vmx.c
Modified: head/sys/amd64/vmm/intel/vmx.c
==============================================================================
--- head/sys/amd64/vmm/intel/vmx.c Sat Apr 13 21:21:13 2013 (r249449)
+++ head/sys/amd64/vmm/intel/vmx.c Sat Apr 13 21:41:51 2013 (r249450)
@@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$");
#include <sys/malloc.h>
#include <sys/pcpu.h>
#include <sys/proc.h>
+#include <sys/sysctl.h>
#include <vm/vm.h>
#include <vm/pmap.h>
@@ -116,6 +117,9 @@ __FBSDID("$FreeBSD$");
MALLOC_DEFINE(M_VMX, "vmx", "vmx");
+SYSCTL_DECL(_hw_vmm);
+SYSCTL_NODE(_hw_vmm, OID_AUTO, vmx, CTLFLAG_RW, NULL, NULL);
+
int vmxon_enabled[MAXCPU];
static char vmxon_region[MAXCPU][PAGE_SIZE] __aligned(PAGE_SIZE);
@@ -123,12 +127,25 @@ static uint32_t pinbased_ctls, procbased
static uint32_t exit_ctls, entry_ctls;
static uint64_t cr0_ones_mask, cr0_zeros_mask;
+SYSCTL_ULONG(_hw_vmm_vmx, OID_AUTO, cr0_ones_mask, CTLFLAG_RD,
+ &cr0_ones_mask, 0, NULL);
+SYSCTL_ULONG(_hw_vmm_vmx, OID_AUTO, cr0_zeros_mask, CTLFLAG_RD,
+ &cr0_zeros_mask, 0, NULL);
+
static uint64_t cr4_ones_mask, cr4_zeros_mask;
+SYSCTL_ULONG(_hw_vmm_vmx, OID_AUTO, cr4_ones_mask, CTLFLAG_RD,
+ &cr4_ones_mask, 0, NULL);
+SYSCTL_ULONG(_hw_vmm_vmx, OID_AUTO, cr4_zeros_mask, CTLFLAG_RD,
+ &cr4_zeros_mask, 0, NULL);
static volatile u_int nextvpid;
static int vmx_no_patmsr;
+static int vmx_initialized;
+SYSCTL_INT(_hw_vmm_vmx, OID_AUTO, initialized, CTLFLAG_RD,
+ &vmx_initialized, 0, "Intel VMX initialized");
+
/*
* Virtual NMI blocking conditions.
*
@@ -593,6 +610,8 @@ vmx_init(void)
/* enable VMX operation */
smp_rendezvous(NULL, vmx_enable, NULL, NULL);
+ vmx_initialized = 1;
+
return (0);
}
More information about the svn-src-head
mailing list