aboutsummaryrefslogtreecommitdiffstats
path: root/xen
diff options
context:
space:
mode:
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2005-02-05 15:35:09 +0000
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>2005-02-05 15:35:09 +0000
commite98bfa2604784f43a83ab550c13aa45fe6f19990 (patch)
tree8f7ff5fbac2b217df07254a9e861b450c693b446 /xen
parent4fe70c2f8c4c43527fd66fc852bdff6eaaeb33c6 (diff)
downloadxen-e98bfa2604784f43a83ab550c13aa45fe6f19990.tar.gz
xen-e98bfa2604784f43a83ab550c13aa45fe6f19990.tar.bz2
xen-e98bfa2604784f43a83ab550c13aa45fe6f19990.zip
bitkeeper revision 1.1159.246.3 (4204e7ad2KYRVbyWiC88XmVkIag9Wg)
More common-code movements for ia64. Signed-off-by: keir.fraser@cl.cam.ac.uk
Diffstat (limited to 'xen')
-rw-r--r--xen/include/asm-x86/domain.h11
-rw-r--r--xen/include/asm-x86/init.h29
-rw-r--r--xen/include/xen/init.h25
-rw-r--r--xen/include/xen/sched.h10
4 files changed, 50 insertions, 25 deletions
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__ */