diff options
-rw-r--r-- | .rootkeys | 2 | ||||
-rw-r--r-- | xen/include/asm-x86/domain.h | 11 | ||||
-rw-r--r-- | xen/include/asm-x86/init.h | 29 | ||||
-rw-r--r-- | xen/include/xen/init.h | 25 | ||||
-rw-r--r-- | xen/include/xen/sched.h | 10 |
5 files changed, 52 insertions, 25 deletions
@@ -999,12 +999,14 @@ 3ddb79c3r9-31dIsewPV3P3i8HALsQ xen/include/asm-x86/delay.h 3ddb79c34BFiXjBJ_cCKB0aCsV1IDw xen/include/asm-x86/desc.h 40715b2dTokMLYGSuD58BnxOqyWVew xen/include/asm-x86/div64.h +4204e7acwzqgXyTAPKa1nM-L7Ec0Qw xen/include/asm-x86/domain.h 41febc4bBKTKHhnAu_KPYwgNkHjFlg xen/include/asm-x86/domain_page.h 41d3eaaeIBzW621S1oa0c2yk7X43qQ xen/include/asm-x86/e820.h 3ddb79c3NU8Zy40OTrq3D-i30Y3t4A xen/include/asm-x86/fixmap.h 3e2d29944GI24gf7vOP_7x8EyuqxeA xen/include/asm-x86/flushtlb.h 3ddb79c39o75zPP0T1aQQ4mNrCAN2w xen/include/asm-x86/hardirq.h 3ddb79c3TMDjkxVndKFKnGiwY0HzDg xen/include/asm-x86/i387.h +4204e7acwXDo-5iAAiO2eQbtDeYZXA xen/include/asm-x86/init.h 3ddb79c3fQ_O3o5NHK2N8AJdk0Ea4Q xen/include/asm-x86/io.h 3ddb79c2TKeScYHQZreTdHqYNLbehQ xen/include/asm-x86/io_apic.h 3ddb79c2L7rTlFzazOLW1XuSZefpFw xen/include/asm-x86/irq.h diff --git a/xen/include/asm-x86/domain.h b/xen/include/asm-x86/domain.h new file mode 100644 index 0000000000..6eeb8dbd1c --- /dev/null +++ b/xen/include/asm-x86/domain.h @@ -0,0 +1,11 @@ + +#ifndef __X86_DOMAIN_H__ +#define __X86_DOMAIN_H__ + +typedef struct { +} arch_domain_t; + +typedef struct { +} arch_exec_domain_t; + +#endif /* __X86_DOMAIN_H__ */ diff --git a/xen/include/asm-x86/init.h b/xen/include/asm-x86/init.h new file mode 100644 index 0000000000..8f1e764080 --- /dev/null +++ b/xen/include/asm-x86/init.h @@ -0,0 +1,29 @@ +#ifndef _XEN_ASM_INIT_H +#define _XEN_ASM_INIT_H + +/* + * Mark functions and data as being only used at initialization + * or exit time. + */ +#define __init \ + __attribute__ ((__section__ (".init.text"))) +#define __exit \ + __attribute_used__ __attribute__ ((__section__(".text.exit"))) +#define __initdata \ + __attribute__ ((__section__ (".init.data"))) +#define __exitdata \ + __attribute_used__ __attribute__ ((__section__ (".data.exit"))) +#define __initsetup \ + __attribute_used__ __attribute__ ((__section__ (".setup.init"))) +#define __init_call \ + __attribute_used__ __attribute__ ((__section__ (".initcall.init"))) +#define __exit_call \ + __attribute_used__ __attribute__ ((__section__ (".exitcall.exit"))) + +/* For assembly routines +#define __INIT .section ".text.init","ax" +#define __FINIT .previous +#define __INITDATA .section ".data.init","aw" +*/ + +#endif /* _XEN_ASM_INIT_H */ diff --git a/xen/include/xen/init.h b/xen/include/xen/init.h index 9e1e62e48f..6df189f980 100644 --- a/xen/include/xen/init.h +++ b/xen/include/xen/init.h @@ -2,6 +2,7 @@ #define _LINUX_INIT_H #include <xen/config.h> +#include <asm/init.h> /* These macros are used to mark some functions or * initialized data (doesn't apply to uninitialized data) @@ -83,30 +84,6 @@ extern struct kernel_param __setup_start, __setup_end; #endif /* __ASSEMBLY__ */ -/* - * Mark functions and data as being only used at initialization - * or exit time. - */ -#define __init \ - __attribute__ ((__section__ (".text.init"))) -#define __exit \ - __attribute_used__ __attribute__ ((__section__(".text.exit"))) -#define __initdata \ - __attribute__ ((__section__ (".data.init"))) -#define __exitdata \ - __attribute_used__ __attribute__ ((__section__ (".data.exit"))) -#define __initsetup \ - __attribute_used__ __attribute__ ((__section__ (".setup.init"))) -#define __init_call \ - __attribute_used__ __attribute__ ((__section__ (".initcall.init"))) -#define __exit_call \ - __attribute_used__ __attribute__ ((__section__ (".exitcall.exit"))) - -/* For assembly routines */ -#define __INIT .section ".text.init","ax" -#define __FINIT .previous -#define __INITDATA .section ".data.init","aw" - #ifdef CONFIG_HOTPLUG #define __devinit #define __devinitdata diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h index 3f3c2ef05a..5a875589fc 100644 --- a/xen/include/xen/sched.h +++ b/xen/include/xen/sched.h @@ -21,7 +21,8 @@ #include <asm/current.h> #include <xen/spinlock.h> #include <xen/grant_table.h> -#include <xen/irq_cpustat.h> +#include <asm/hardirq.h> +#include <asm/domain.h> extern unsigned long volatile jiffies; extern rwlock_t domlist_lock; @@ -67,7 +68,11 @@ struct exec_domain struct exec_domain *ed_next_list; int eid; +#ifdef ARCH_HAS_EXEC_DOMAIN_MM_PTR + struct mm_struct *mm; +#else struct mm_struct mm; +#endif struct thread_struct thread; @@ -84,6 +89,7 @@ struct exec_domain u16 virq_to_evtchn[NR_VIRQS]; atomic_t pausecnt; + arch_exec_domain_t arch; }; @@ -151,6 +157,7 @@ struct domain { atomic_t refcnt; struct exec_domain *exec_domain[MAX_VIRT_CPUS]; + arch_domain_t arch; }; struct domain_setup_info @@ -373,4 +380,5 @@ static inline void domain_unpause_by_systemcontroller(struct domain *d) #include <xen/slab.h> #include <xen/domain.h> + #endif /* __SCHED_H__ */ |