summaryrefslogtreecommitdiffstats
path: root/sys/i386/include/xen
diff options
context:
space:
mode:
authorroyger <royger@FreeBSD.org>2014-03-11 10:24:13 +0000
committerroyger <royger@FreeBSD.org>2014-03-11 10:24:13 +0000
commit6b1be122340e08f3cd907273f419d173138cf66e (patch)
tree321190d6e7f2a3801f2989218ddc460bf9a4c1f9 /sys/i386/include/xen
parent891131cb52c5aa334778f1f5cb0ac125c88c32cb (diff)
downloadFreeBSD-src-6b1be122340e08f3cd907273f419d173138cf66e.zip
FreeBSD-src-6b1be122340e08f3cd907273f419d173138cf66e.tar.gz
xen: use the same hypercall mechanism for XEN and XENHVM
Currently XEN (PV) and XENHVM (PVHVM) ports use different ways to issue hypercalls, unify this by filling the hypercall_page under HVM also. Approved by: gibbs Sponsored by: Citrix Systems R&D amd64/include/xen/hypercall.h: - Unify Xen hypercall code by always using the PV way. i386/i386/locore.s: - Define hypercall_page on i386 XENHVM. x86/xen/hvm.c: - Fill hypercall_page on XENHVM kernels using the HVM method (only when running as an HVM guest).
Diffstat (limited to 'sys/i386/include/xen')
-rw-r--r--sys/i386/include/xen/hypercall.h8
1 files changed, 0 insertions, 8 deletions
diff --git a/sys/i386/include/xen/hypercall.h b/sys/i386/include/xen/hypercall.h
index edc13f4..16b5ee2 100644
--- a/sys/i386/include/xen/hypercall.h
+++ b/sys/i386/include/xen/hypercall.h
@@ -39,16 +39,8 @@
#define ENOXENSYS 38
#define CONFIG_XEN_COMPAT 0x030002
-
-#if defined(XEN)
#define HYPERCALL_STR(name) \
"call hypercall_page + ("STR(__HYPERVISOR_##name)" * 32)"
-#else
-#define HYPERCALL_STR(name) \
- "mov hypercall_stubs,%%eax; " \
- "add $("STR(__HYPERVISOR_##name)" * 32),%%eax; " \
- "call *%%eax"
-#endif
#define _hypercall0(type, name) \
({ \
OpenPOWER on IntegriCloud