summaryrefslogtreecommitdiffstats
path: root/sys/amd64/conf
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>2013-09-20 22:59:22 +0000
committergibbs <gibbs@FreeBSD.org>2013-09-20 22:59:22 +0000
commit7ed30adae7eb0c6e156983ca0c96c04e1e6a8e0d (patch)
tree301b6e7f4ff8cd017faecbcf64de6922be093a7e /sys/amd64/conf
parentec391855a94cc7ab44ba6ba5b3d8d27a5a1c224d (diff)
downloadFreeBSD-src-7ed30adae7eb0c6e156983ca0c96c04e1e6a8e0d.zip
FreeBSD-src-7ed30adae7eb0c6e156983ca0c96c04e1e6a8e0d.tar.gz
Merge Xen PVHVM support into the GENERIC kernel config for both
amd64 and i386. Submitted by: Roger Pau Monné Sponsored by: Citrix Systems R&D Reviewed by: gibbs Approved by: re (blanket Xen) MFC after: 2 weeks sys/amd64/amd64/mp_machdep.c: sys/amd64/include/cpu.h: sys/i386/i386/mp_machdep.c: sys/i386/include/cpu.h: - Introduce two new CPU hooks for initialization and resume purposes. This allows us to get rid of the XENHVM ifdefs in mp_machdep, and also sets some hooks into common code that can be used by other hypervisor implementations. sys/amd64/conf/XENHVM: sys/i386/conf/XENHVM: - Remove these configs now that GENERIC has builtin support for Xen HVM. sys/kern/subr_smp.c: - Make sure there are no pending IPIs when suspending a system. sys/x86/xen/hvm.c: - Add cpu init and resume vectors that are called from mp_machdep using the new hooks. - Only clear the vcpu_info mapping data on resume. It is already clear for the BSP on a cold boot and is set correctly as APs are started. - Gate xen_hvm_init_cpu only to systems running under Xen. sys/x86/xen/xen_intr.c: - Gate the setup of event channels only to systems running under Xen.
Diffstat (limited to 'sys/amd64/conf')
-rw-r--r--sys/amd64/conf/GENERIC4
-rw-r--r--sys/amd64/conf/XENHVM22
2 files changed, 4 insertions, 22 deletions
diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC
index 4de94ce..7b2f8ee 100644
--- a/sys/amd64/conf/GENERIC
+++ b/sys/amd64/conf/GENERIC
@@ -72,6 +72,7 @@ options KDTRACE_FRAME # Ensure frames are compiled in
options KDTRACE_HOOKS # Kernel DTrace hooks
options DDB_CTF # Kernel ELF linker loads CTF data
options INCLUDE_CONFIG_FILE # Include this file in kernel
+options XENHVM # Include Xen support
# Debugging support. Always need this:
options KDB # Enable kernel debugger support.
@@ -341,5 +342,8 @@ device virtio_blk # VirtIO Block device
device virtio_scsi # VirtIO SCSI device
device virtio_balloon # VirtIO Memory Balloon device
+# Xen support
+device xenpci # Generic Xen bus
+
# VMware support
device vmx # VMware VMXNET3 Ethernet
diff --git a/sys/amd64/conf/XENHVM b/sys/amd64/conf/XENHVM
deleted file mode 100644
index ee745ec..0000000
--- a/sys/amd64/conf/XENHVM
+++ /dev/null
@@ -1,22 +0,0 @@
-#
-# XENHVM -- Xen HVM kernel configuration file for FreeBSD/amd64
-#
-# $FreeBSD$
-#
-include GENERIC
-ident XENHVM
-
-#
-# Adaptive locks rely on a lock-free pointer read to determine the run state
-# of the thread holding a lock when under contention; under a virtualisation
-# system, the thread run state may not accurately reflect whether the thread
-# (or rather its host VCPU) is actually executing. As such, disable this
-# optimisation.
-#
-options NO_ADAPTIVE_MUTEXES
-options NO_ADAPTIVE_RWLOCKS
-options NO_ADAPTIVE_SX
-
-# Xen HVM support
-options XENHVM
-device xenpci
OpenPOWER on IntegriCloud