diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2013-07-19 12:51:08 +0100 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2013-08-20 15:40:52 +0100 |
commit | 6bba043afe0f29ff4f87b839b55b58b15cca1c08 (patch) | |
tree | 928d7b25517816266f735a79f5eb2d02514e35c0 | |
parent | 623038e4df4f09946e6126e5744a3a2e28add28f (diff) | |
download | xen-6bba043afe0f29ff4f87b839b55b58b15cca1c08.tar.gz xen-6bba043afe0f29ff4f87b839b55b58b15cca1c08.tar.bz2 xen-6bba043afe0f29ff4f87b839b55b58b15cca1c08.zip |
xen: only expose start_info on architectures which have a PV boot path
Most of this struct is PV MMU specific and it is not used on ARM at all.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Jan Beulich <JBeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
-rw-r--r-- | tools/libxc/xenctrl.h | 5 | ||||
-rw-r--r-- | xen/include/asm-x86/config.h | 1 | ||||
-rw-r--r-- | xen/include/public/arch-x86/xen.h | 2 | ||||
-rw-r--r-- | xen/include/public/xen.h | 3 |
4 files changed, 7 insertions, 4 deletions
diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h index 388a9c3d55..f2cebafc9d 100644 --- a/tools/libxc/xenctrl.h +++ b/tools/libxc/xenctrl.h @@ -408,15 +408,14 @@ typedef union shared_info_t s; } shared_info_any_t; +#if defined(__i386__) || defined(__x86_64__) typedef union { -#if defined(__i386__) || defined(__x86_64__) start_info_x86_64_t x64; start_info_x86_32_t x32; -#endif start_info_t s; } start_info_any_t; - +#endif int xc_domain_create(xc_interface *xch, uint32_t ssidref, diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index cb7b2e4a05..028b696dfa 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -265,6 +265,7 @@ extern unsigned char boot_edid_info[128]; (COMPAT_L2_PAGETABLE_LAST_XEN_SLOT - COMPAT_L2_PAGETABLE_FIRST_XEN_SLOT(d) + 1) #define COMPAT_LEGACY_MAX_VCPUS XEN_LEGACY_MAX_VCPUS +#define COMPAT_HAVE_PV_GUEST_ENTRY XEN_HAVE_PV_GUEST_ENTRY #endif diff --git a/xen/include/public/arch-x86/xen.h b/xen/include/public/arch-x86/xen.h index b7f6a517b9..7ae8c90489 100644 --- a/xen/include/public/arch-x86/xen.h +++ b/xen/include/public/arch-x86/xen.h @@ -70,6 +70,8 @@ typedef unsigned long xen_pfn_t; #define PRI_xen_pfn "lx" #endif +#define XEN_HAVE_PV_GUEST_ENTRY 1 + /* * `incontents 200 segdesc Segment Descriptor Tables */ diff --git a/xen/include/public/xen.h b/xen/include/public/xen.h index 3cab74f18e..2414e7e3ca 100644 --- a/xen/include/public/xen.h +++ b/xen/include/public/xen.h @@ -716,7 +716,7 @@ typedef struct shared_info shared_info_t; * 32-bit and runs under a 64-bit hypervisor should _NOT_ use two of the * pages preceding pt_base and mark them as reserved/unused. */ - +#ifdef XEN_HAVE_PV_GUEST_ENTRY #define MAX_GUEST_CMDLINE 1024 struct start_info { /* THE FOLLOWING ARE FILLED IN BOTH ON INITIAL BOOT AND ON RESUME. */ @@ -756,6 +756,7 @@ typedef struct start_info start_info_t; #define console_mfn console.domU.mfn #define console_evtchn console.domU.evtchn #endif +#endif /* XEN_HAVE_PV_GUEST_ENTRY */ /* These flags are passed in the 'flags' field of start_info_t. */ #define SIF_PRIVILEGED (1<<0) /* Is the domain privileged? */ |