[Xen-ia64-devel] [PATCH] fix compilation error on ia64.
fix compilation error on ia64. This patch fixes the following compilation error. Since struct page_list_head is defined in mm.h, sched.h needs mm.h. Other circular inclusions are sorted out. > In file included from xen/include/asm-ia64/linux-xen/asm/smp.h:50, > from xen/include/linux/smp.h:5, > from xen/include/asm-ia64/linux/topology.h:33, > from xen/include/asm-ia64/linux-xen/linux/gfp.h:6, > from xen/include/asm/mm.h:11, > from xen/include/xen/mm.h:90, > from viosapic.c:35: > xen/include/xen/sched.h:174: error: field page_list has incomplete type > xen/include/xen/sched.h:175: error: field xenpage_list has incomplete type Signed-off-by: Isaku Yamahata diff --git a/xen/drivers/passthrough/vtd/dmar.c b/xen/drivers/passthrough/vtd/dmar.c --- a/xen/drivers/passthrough/vtd/dmar.c +++ b/xen/drivers/passthrough/vtd/dmar.c @@ -21,6 +21,7 @@ #include #include +#include #include #include #include diff --git a/xen/include/asm-ia64/hardirq.h b/xen/include/asm-ia64/hardirq.h --- a/xen/include/asm-ia64/hardirq.h +++ b/xen/include/asm-ia64/hardirq.h @@ -4,6 +4,7 @@ #define __ARCH_IRQ_STAT1 #define HARDIRQ_BITS 14 #include +#include #define local_softirq_pending() (local_cpu_data->softirq_pending) diff --git a/xen/include/asm-ia64/linux-xen/asm/smp.h b/xen/include/asm-ia64/linux-xen/asm/smp.h --- a/xen/include/asm-ia64/linux-xen/asm/smp.h +++ b/xen/include/asm-ia64/linux-xen/asm/smp.h @@ -47,7 +47,6 @@ ia64_get_lid (void) #define SMP_IPI_REDIRECTION(1 << 1) #ifdef XEN -#include #define raw_smp_processor_id() (current->processor) #else #define raw_smp_processor_id() (current_thread_info()->cpu) diff --git a/xen/include/asm-ia64/mm.h b/xen/include/asm-ia64/mm.h --- a/xen/include/asm-ia64/mm.h +++ b/xen/include/asm-ia64/mm.h @@ -13,7 +13,6 @@ #include #include #include -#include #include #include diff --git a/xen/include/asm-ia64/tlbflush.h b/xen/include/asm-ia64/tlbflush.h --- a/xen/include/asm-ia64/tlbflush.h +++ b/xen/include/asm-ia64/tlbflush.h @@ -1,7 +1,8 @@ #ifndef __FLUSHTLB_H__ #define __FLUSHTLB_H__ -#include +struct vcpu; +struct domain; /* TLB flushes can be either local (current vcpu only) or domain wide (on all vcpus). diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h --- a/xen/include/xen/sched.h +++ b/xen/include/xen/sched.h @@ -19,6 +19,7 @@ #include #include #include +#include #ifdef CONFIG_COMPAT #include -- yamahata ___ Xen-ia64-devel mailing list Xen-ia64-devel@lists.xensource.com http://lists.xensource.com/xen-ia64-devel
[Xen-ia64-devel] [PATCH] fix compilation error caused by 19046:ecf603780f56
[IA64] fix compilation error caused by 19046:ecf603780f56 This patch fixes the following compilation error adjusting function prototypes. > xc_core_ia64.c:176: error: conflicting types for 'xc_core_arch_memory_map_get' > xc_core.h:141: error: previous declaration of 'xc_core_arch_memory_map_get' > was here > xc_core_ia64.c:241: error: conflicting types for 'xc_core_arch_map_p2m' > xc_core.h:144: error: previous declaration of 'xc_core_arch_map_p2m' was here Signed-off-by: Isaku Yamahata diff --git a/tools/libxc/xc_core_ia64.c b/tools/libxc/xc_core_ia64.c --- a/tools/libxc/xc_core_ia64.c +++ b/tools/libxc/xc_core_ia64.c @@ -68,7 +68,7 @@ xc_core_arch_auto_translated_physmap(con /* see setup_guest() @ xc_linux_build.c */ static int memory_map_get_old_domu(int xc_handle, xc_dominfo_t *info, -shared_info_t *live_shinfo, +shared_info_any_t *live_shinfo, xc_core_memory_map_t **mapp, unsigned int *nr_entries) { xc_core_memory_map_t *map = NULL; @@ -96,7 +96,7 @@ out: /* see setup_guest() @ xc_ia64_hvm_build.c */ static int memory_map_get_old_hvm(int xc_handle, xc_dominfo_t *info, - shared_info_t *live_shinfo, + shared_info_any_t *live_shinfo, xc_core_memory_map_t **mapp, unsigned int *nr_entries) { const xc_core_memory_map_t gfw_map[] = { @@ -155,7 +155,7 @@ out: static int memory_map_get_old(int xc_handle, xc_dominfo_t *info, - shared_info_t *live_shinfo, + shared_info_any_t *live_shinfo, xc_core_memory_map_t **mapp, unsigned int *nr_entries) { if ( info->hvm ) @@ -170,7 +170,8 @@ int int xc_core_arch_memory_map_get(int xc_handle, struct xc_core_arch_context *arch_ctxt, -xc_dominfo_t *info, shared_info_t *live_shinfo, +xc_dominfo_t *info, +shared_info_any_t *live_shinfo, xc_core_memory_map_t **mapp, unsigned int *nr_entries) { @@ -190,8 +191,8 @@ xc_core_arch_memory_map_get(int xc_handl } /* copy before use in case someone updating them */ -if (xc_ia64_copy_memmap(xc_handle, info->domid, live_shinfo, &memmap_info, -NULL)) { +if (xc_ia64_copy_memmap(xc_handle, info->domid, &live_shinfo->s, +&memmap_info, NULL)) { goto old; } @@ -236,7 +237,7 @@ old: int xc_core_arch_map_p2m(int xc_handle, unsigned int guest_width, xc_dominfo_t *info, - shared_info_t *live_shinfo, xen_pfn_t **live_p2m, + shared_info_any_t *live_shinfo, xen_pfn_t **live_p2m, unsigned long *pfnp) { /* -- yamahata ___ Xen-ia64-devel mailing list Xen-ia64-devel@lists.xensource.com http://lists.xensource.com/xen-ia64-devel
[Xen-ia64-devel] [PATCH] fix compilation error.
[IA64]: fix compilation error. BUILD_BUG_ON() was changed so that now BUILD_BUG_ON() can't be used with symbol values. Fortunately dom_fpswa_hypercall_patch() isn't performance critical so replace BUILD_BUG_ON() with BUG_ON(). Fixed the wrong condition which has off-by-one bug. Signed-off-by: Isaku Yamahata diff --git a/xen/arch/ia64/xen/dom_fw_common.c b/xen/arch/ia64/xen/dom_fw_common.c --- a/xen/arch/ia64/xen/dom_fw_common.c +++ b/xen/arch/ia64/xen/dom_fw_common.c @@ -275,8 +275,8 @@ dom_fpswa_hypercall_patch(uint64_t brkim *entry_imva = 0; /* see dom_fw.h */ - BUILD_BUG_ON((char*)xen_ia64_fpswa_call_stub_end - -(char*)xen_ia64_fpswa_call_stub > 0xff - 16); + BUG_ON((char*)xen_ia64_fpswa_call_stub_end - + (char*)xen_ia64_fpswa_call_stub > 0xff - 16 + 1); /* call stub */ memcpy(patch_imva, xen_ia64_fpswa_call_stub, stub_size); -- yamahata ___ Xen-ia64-devel mailing list Xen-ia64-devel@lists.xensource.com http://lists.xensource.com/xen-ia64-devel