# HG changeset patch # User tristan.gingold@xxxxxxxx # Node ID 7e53a91d47ae3354779a16119f9ccb9cc40f3808 # Parent ce125e557225bc409186d82afe86aecdef6356dc Sync with transparent virtualization running_on_xen. Call xen_init in setup_arch. Declare running_on_xen in xenia64_init.c, remove running_on_xen and is_running_on_xen from xensetup.S Remove xen_ksyms.c Signed-off-by: Tristan Gingold diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/arch/ia64/kernel/setup.c --- a/linux-2.6-xen-sparse/arch/ia64/kernel/setup.c Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/arch/ia64/kernel/setup.c Thu May 18 06:33:04 2006 @@ -514,6 +514,9 @@ #ifdef CONFIG_XEN if (running_on_xen) { extern shared_info_t *HYPERVISOR_shared_info; + extern int xen_init (void); + + xen_init (); /* xen_start_info isn't setup yet, get the flags manually */ if (HYPERVISOR_shared_info->arch.flags & SIF_INITDOMAIN) { diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/arch/ia64/xen/Makefile --- a/linux-2.6-xen-sparse/arch/ia64/xen/Makefile Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/Makefile Thu May 18 06:33:04 2006 @@ -2,7 +2,7 @@ # Makefile for Xen components # -obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o xenconsole.o xen_ksyms.o +obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o xenconsole.o obj-$(CONFIG_XEN_IA64_DOM0_VP) += hypervisor.o pci-dma-xen.o util.o -pci-dma-xen-$(CONFIG_XEN_IA64_DOM0_VP) := ../../i386/kernel/pci-dma-xen.o \ No newline at end of file +pci-dma-xen-$(CONFIG_XEN_IA64_DOM0_VP) := ../../i386/kernel/pci-dma-xen.o diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/arch/ia64/xen/drivers/xenia64_init.c --- a/linux-2.6-xen-sparse/arch/ia64/xen/drivers/xenia64_init.c Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/drivers/xenia64_init.c Thu May 18 06:33:04 2006 @@ -11,11 +11,14 @@ shared_info_t *HYPERVISOR_shared_info = (shared_info_t *)XSI_BASE; EXPORT_SYMBOL(HYPERVISOR_shared_info); -static int initialized; start_info_t *xen_start_info; + +int running_on_xen; +EXPORT_SYMBOL(running_on_xen); int xen_init(void) { + static int initialized; shared_info_t *s = HYPERVISOR_shared_info; if (initialized) diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/arch/ia64/xen/xensetup.S --- a/linux-2.6-xen-sparse/arch/ia64/xen/xensetup.S Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/arch/ia64/xen/xensetup.S Thu May 18 06:33:04 2006 @@ -7,12 +7,6 @@ #include #include #include - - .data - .align 8 - .globl running_on_xen -running_on_xen: - data4 0 #define isBP p3 // are we the Bootstrap Processor? @@ -28,9 +22,3 @@ (p7) mov cr.iva=r10 br.ret.sptk.many rp;; END(early_xen_setup) - -GLOBAL_ENTRY(is_running_on_xen) - movl r9=running_on_xen;; - ld4 r8=[r9] - br.ret.sptk.many rp;; -END(is_running_on_xen) diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h --- a/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypervisor.h Thu May 18 06:33:04 2006 @@ -53,7 +53,8 @@ void force_evtchn_callback(void); -int xen_init(void); +/* True if running on xen. */ +extern int running_on_xen; /* Turn jiffies into Xen system time. XXX Implement me. */ #define jiffies_to_st(j) 0 diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/include/asm-ia64/xen/privop.h --- a/linux-2.6-xen-sparse/include/asm-ia64/xen/privop.h Thu May 18 06:29:28 2006 +++ b/linux-2.6-xen-sparse/include/asm-ia64/xen/privop.h Thu May 18 06:33:04 2006 @@ -42,12 +42,7 @@ #endif #ifndef __ASSEMBLY__ -#ifdef MODULE -extern int is_running_on_xen(void); -#define running_on_xen (is_running_on_xen()) -#else extern int running_on_xen; -#endif #define XEN_HYPER_SSM_I asm("break %0" : : "i" (HYPERPRIVOP_SSM_I)) #define XEN_HYPER_GET_IVR asm("break %0" : : "i" (HYPERPRIVOP_GET_IVR)) diff -r ce125e557225 -r 7e53a91d47ae linux-2.6-xen-sparse/arch/ia64/xen/xen_ksyms.c --- a/linux-2.6-xen-sparse/arch/ia64/xen/xen_ksyms.c Thu May 18 06:29:28 2006 +++ /dev/null Thu May 18 06:33:04 2006 @@ -1,12 +0,0 @@ -/* - * Architecture-specific kernel symbols - * - * Don't put any exports here unless it's defined in an assembler file. - * All other exports should be put directly after the definition. - */ - -#include -#include - -extern int is_running_on_xen(void); -EXPORT_SYMBOL(is_running_on_xen);