[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [IA64] kexec: Header changes in preparation for EFI RID
# HG changeset patch # User Isaku Yamahata <yamahata@xxxxxxxxxxxxx> # Date 1216696502 -32400 # Node ID 246a179ebb6da26c436fe6b28623d2f0a18de4c9 # Parent 4f0428e4dd15d20adb383fcf89432e02cdab375c [IA64] kexec: Header changes in preparation for EFI RID The EFI RID patches require pal.h to (directly or indirectly) have access to GRANULE_SIZE which is defined in pgtable.h. This effectively causes a header loop as pgtable.h includes system.h and system.h includes pal.h. This patch breaks that loop by not including pal.h in system.h if XEN is defined, which is the only time the loop will occur. There are two side effects of this: 1. regionreg.c makes use of some symbols declared in pal.h but does not include it directly. This is resolved by including it, which doesn't seem to cause any additional problems. 2. system.h makes use of ia64_pal_halt_light which is defined in pal.h. #define safe_halt() ia64_pal_halt_light() This is probably the reason that pal.h is included in system.h. However this does not seem to manifest as any sort of build problem, presumably because either nothing in xen uses safe_halt, or because those that do include pal.h by some other means. In any case the change seems safe, though hackish. Cc: Tristan Gingold <tgingold@xxxxxxx> Cc: Isaku Yamahata <yamahata@xxxxxxxxxxxxx> Cc: Alex Williamson <alex.williamson@xxxxxx> Cc: Aron Griffis <aron@xxxxxx> Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx> --- xen/arch/ia64/xen/regionreg.c | 1 + xen/include/asm-ia64/linux-xen/asm/system.h | 2 ++ 2 files changed, 3 insertions(+) diff -r 4f0428e4dd15 -r 246a179ebb6d xen/arch/ia64/xen/regionreg.c --- a/xen/arch/ia64/xen/regionreg.c Tue Jul 22 12:15:02 2008 +0900 +++ b/xen/arch/ia64/xen/regionreg.c Tue Jul 22 12:15:02 2008 +0900 @@ -16,6 +16,7 @@ #include <asm/vhpt.h> #include <asm/vcpu.h> #include <asm/percpu.h> +#include <asm/pal.h> /* Defined in xemasm.S */ extern void ia64_new_rr7(unsigned long rid, void *shared_info, void *shared_arch_info, unsigned long shared_info_va, unsigned long va_vhpt); diff -r 4f0428e4dd15 -r 246a179ebb6d xen/include/asm-ia64/linux-xen/asm/system.h --- a/xen/include/asm-ia64/linux-xen/asm/system.h Tue Jul 22 12:15:02 2008 +0900 +++ b/xen/include/asm-ia64/linux-xen/asm/system.h Tue Jul 22 12:15:02 2008 +0900 @@ -16,7 +16,9 @@ #include <asm/kregs.h> #include <asm/page.h> +#ifndef XEN #include <asm/pal.h> +#endif #include <asm/percpu.h> #ifndef XEN _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |