aboutsummaryrefslogtreecommitdiff
path: root/sys/x86/xen/hvm.c
diff options
context:
space:
mode:
authorRoger Pau Monné <royger@FreeBSD.org>2014-03-11 10:07:01 +0000
committerRoger Pau Monné <royger@FreeBSD.org>2014-03-11 10:07:01 +0000
commit1a9cdd373a6a40539668898b8b32d5cb16103149 (patch)
tree6272bb4211bd811ce759def6aa759b755cd86415 /sys/x86/xen/hvm.c
parente8da1c4877388cd5c76e9815d9edb27b7f9cd443 (diff)
downloadsrc-1a9cdd373a6a40539668898b8b32d5cb16103149.tar.gz
src-1a9cdd373a6a40539668898b8b32d5cb16103149.zip
xen: add PV/PVH kernel entry point
Add the PV/PVH entry point and the low level functions for PVH early initialization. Approved by: gibbs Sponsored by: Citrix Systems R&D amd64/amd64/genassym.c: - Add __FreeBSD_version define to assym.s so it can be used for the Xen notes. amd64/amd64/locore.S: - Make bootstack global so it can be used from Xen kernel entry point. amd64/amd64/xen-locore.S: - Add Xen notes to the kernel. - Add the Xen PV entry point, that is going to call hammer_time_xen. amd64/include/asmacros.h: - Add ELFNOTE macros. i386/xen/xen_machdep.c: - Define HYPERVISOR_start_info for the XEN i386 PV port, which is going to be used in some shared code between PV and PVH. x86/xen/hvm.c: - Define HYPERVISOR_start_info for the PVH port. x86/xen/pv.c: - Introduce hammer_time_xen which is going to perform early setup for Xen PVH: - Setup shared Xen variables start_info, shared_info and xen_store. - Set guest type. - Create initial page tables as FreeBSD expects to find them. - Call into native init function (hammer_time). xen/xen-os.h: - Declare HYPERVISOR_start_info. conf/files.amd64: - Add amd64/amd64/locore.S and x86/xen/pv.c to the list of files.
Notes
Notes: svn path=/head/; revision=263002
Diffstat (limited to 'sys/x86/xen/hvm.c')
-rw-r--r--sys/x86/xen/hvm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/x86/xen/hvm.c b/sys/x86/xen/hvm.c
index 9f4c6bef98b0..6977d561088c 100644
--- a/sys/x86/xen/hvm.c
+++ b/sys/x86/xen/hvm.c
@@ -149,6 +149,7 @@ DPCPU_DEFINE(xen_intr_handle_t, ipi_handle[nitems(xen_ipis)]);
/** Hypercall table accessed via HYPERVISOR_*_op() methods. */
char *hypercall_stubs;
shared_info_t *HYPERVISOR_shared_info;
+start_info_t *HYPERVISOR_start_info;
#ifdef SMP
/*---------------------------- XEN PV IPI Handlers ---------------------------*/