diff options
Diffstat (limited to 'arch/i386/kernel/asm-offsets.c')
-rw-r--r-- | arch/i386/kernel/asm-offsets.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/i386/kernel/asm-offsets.c b/arch/i386/kernel/asm-offsets.c index 27a776c9044d..25f7eb513928 100644 --- a/arch/i386/kernel/asm-offsets.c +++ b/arch/i386/kernel/asm-offsets.c | |||
@@ -17,6 +17,8 @@ | |||
17 | #include <asm/thread_info.h> | 17 | #include <asm/thread_info.h> |
18 | #include <asm/elf.h> | 18 | #include <asm/elf.h> |
19 | 19 | ||
20 | #include <xen/interface/xen.h> | ||
21 | |||
20 | #define DEFINE(sym, val) \ | 22 | #define DEFINE(sym, val) \ |
21 | asm volatile("\n->" #sym " %0 " #val : : "i" (val)) | 23 | asm volatile("\n->" #sym " %0 " #val : : "i" (val)) |
22 | 24 | ||
@@ -59,6 +61,7 @@ void foo(void) | |||
59 | OFFSET(TI_addr_limit, thread_info, addr_limit); | 61 | OFFSET(TI_addr_limit, thread_info, addr_limit); |
60 | OFFSET(TI_restart_block, thread_info, restart_block); | 62 | OFFSET(TI_restart_block, thread_info, restart_block); |
61 | OFFSET(TI_sysenter_return, thread_info, sysenter_return); | 63 | OFFSET(TI_sysenter_return, thread_info, sysenter_return); |
64 | OFFSET(TI_cpu, thread_info, cpu); | ||
62 | BLANK(); | 65 | BLANK(); |
63 | 66 | ||
64 | OFFSET(GDS_size, Xgt_desc_struct, size); | 67 | OFFSET(GDS_size, Xgt_desc_struct, size); |
@@ -115,4 +118,10 @@ void foo(void) | |||
115 | OFFSET(PARAVIRT_iret, paravirt_ops, iret); | 118 | OFFSET(PARAVIRT_iret, paravirt_ops, iret); |
116 | OFFSET(PARAVIRT_read_cr0, paravirt_ops, read_cr0); | 119 | OFFSET(PARAVIRT_read_cr0, paravirt_ops, read_cr0); |
117 | #endif | 120 | #endif |
121 | |||
122 | #ifdef CONFIG_XEN | ||
123 | BLANK(); | ||
124 | OFFSET(XEN_vcpu_info_mask, vcpu_info, evtchn_upcall_mask); | ||
125 | OFFSET(XEN_vcpu_info_pending, vcpu_info, evtchn_upcall_pending); | ||
126 | #endif | ||
118 | } | 127 | } |