| 1 | /* |
|---|
| 2 | * Generate definitions needed by assembly language modules. |
|---|
| 3 | * This code generates raw asm output which is post-processed |
|---|
| 4 | * to extract and format the required data. |
|---|
| 5 | */ |
|---|
| 6 | |
|---|
| 7 | #include <xen/config.h> |
|---|
| 8 | #include <xen/sched.h> |
|---|
| 9 | #include <asm/processor.h> |
|---|
| 10 | #include <asm/ptrace.h> |
|---|
| 11 | #include <asm/mca.h> |
|---|
| 12 | #include <public/xen.h> |
|---|
| 13 | #include <asm/tlb.h> |
|---|
| 14 | #include <asm/regs.h> |
|---|
| 15 | #include <asm/xenmca.h> |
|---|
| 16 | |
|---|
| 17 | #define task_struct vcpu |
|---|
| 18 | |
|---|
| 19 | #define DEFINE(sym, val) \ |
|---|
| 20 | asm volatile("\n->" #sym " (%0) " #val : : "i" (val)) |
|---|
| 21 | |
|---|
| 22 | #define BLANK() asm volatile("\n->" : : ) |
|---|
| 23 | |
|---|
| 24 | #define OFFSET(_sym, _str, _mem) \ |
|---|
| 25 | DEFINE(_sym, offsetof(_str, _mem)); |
|---|
| 26 | |
|---|
| 27 | void foo(void) |
|---|
| 28 | { |
|---|
| 29 | DEFINE(IA64_TASK_SIZE, sizeof (struct task_struct)); |
|---|
| 30 | DEFINE(IA64_THREAD_INFO_SIZE, sizeof (struct thread_info)); |
|---|
| 31 | DEFINE(IA64_PT_REGS_SIZE, sizeof (struct pt_regs)); |
|---|
| 32 | DEFINE(IA64_SWITCH_STACK_SIZE, sizeof (struct switch_stack)); |
|---|
| 33 | DEFINE(IA64_CPU_SIZE, sizeof (struct cpuinfo_ia64)); |
|---|
| 34 | DEFINE(UNW_FRAME_INFO_SIZE, sizeof (struct unw_frame_info)); |
|---|
| 35 | DEFINE(MAPPED_REGS_T_SIZE, sizeof (mapped_regs_t)); |
|---|
| 36 | |
|---|
| 37 | BLANK(); |
|---|
| 38 | DEFINE(IA64_MCA_CPU_INIT_STACK_OFFSET, offsetof (struct ia64_mca_cpu, init_stack)); |
|---|
| 39 | |
|---|
| 40 | BLANK(); |
|---|
| 41 | DEFINE(VCPU_VTM_OFFSET_OFS, offsetof(struct vcpu, arch.arch_vmx.vtm.vtm_offset)); |
|---|
| 42 | DEFINE(VCPU_VTM_LAST_ITC_OFS, offsetof(struct vcpu, arch.arch_vmx.vtm.last_itc)); |
|---|
| 43 | DEFINE(VCPU_VRR0_OFS, offsetof(struct vcpu, arch.arch_vmx.vrr[0])); |
|---|
| 44 | DEFINE(VCPU_ITR0_OFS, offsetof(struct vcpu, arch.itrs[0])); |
|---|
| 45 | DEFINE(VCPU_CALLBACK_OFS, offsetof(struct vcpu, arch.event_callback_ip)); |
|---|
| 46 | #ifdef VTI_DEBUG |
|---|
| 47 | DEFINE(IVT_CUR_OFS, offsetof(struct vcpu, arch.arch_vmx.ivt_current)); |
|---|
| 48 | DEFINE(IVT_DBG_OFS, offsetof(struct vcpu, arch.arch_vmx.ivt_debug)); |
|---|
| 49 | #endif |
|---|
| 50 | DEFINE(TI_FLAGS, offsetof(struct thread_info, flags)); |
|---|
| 51 | DEFINE(TI_PRE_COUNT, offsetof(struct thread_info, preempt_count)); |
|---|
| 52 | |
|---|
| 53 | BLANK(); |
|---|
| 54 | |
|---|
| 55 | DEFINE(IA64_TASK_THREAD_KSP_OFFSET, offsetof (struct vcpu, arch._thread.ksp)); |
|---|
| 56 | DEFINE(IA64_TASK_THREAD_ON_USTACK_OFFSET, offsetof (struct vcpu, arch._thread.on_ustack)); |
|---|
| 57 | |
|---|
| 58 | DEFINE(IA64_VCPU_DOMAIN_OFFSET, offsetof (struct vcpu, domain)); |
|---|
| 59 | DEFINE(IA64_VCPU_HYPERCALL_CONTINUATION_OFS, offsetof (struct vcpu, arch.hypercall_continuation)); |
|---|
| 60 | DEFINE(IA64_VCPU_FP_PSR_OFFSET, offsetof (struct vcpu, arch.fp_psr)); |
|---|
| 61 | DEFINE(IA64_VCPU_META_RR0_OFFSET, offsetof (struct vcpu, arch.metaphysical_rr0)); |
|---|
| 62 | DEFINE(IA64_VCPU_META_SAVED_RR0_OFFSET, offsetof (struct vcpu, arch.metaphysical_saved_rr0)); |
|---|
| 63 | DEFINE(IA64_VCPU_BREAKIMM_OFFSET, offsetof (struct vcpu, arch.breakimm)); |
|---|
| 64 | DEFINE(IA64_VCPU_IVA_OFFSET, offsetof (struct vcpu, arch.iva)); |
|---|
| 65 | DEFINE(IA64_VCPU_EVENT_CALLBACK_IP_OFFSET, offsetof (struct vcpu, arch.event_callback_ip)); |
|---|
| 66 | DEFINE(IA64_VCPU_IRR0_OFFSET, offsetof (struct vcpu, arch.irr[0])); |
|---|
| 67 | DEFINE(IA64_VCPU_IRR3_OFFSET, offsetof (struct vcpu, arch.irr[3])); |
|---|
| 68 | DEFINE(IA64_VCPU_INSVC3_OFFSET, offsetof (struct vcpu, arch.insvc[3])); |
|---|
| 69 | DEFINE(IA64_VCPU_STARTING_RID_OFFSET, offsetof (struct vcpu, arch.starting_rid)); |
|---|
| 70 | DEFINE(IA64_VCPU_ENDING_RID_OFFSET, offsetof (struct vcpu, arch.ending_rid)); |
|---|
| 71 | DEFINE(IA64_VCPU_DOMAIN_ITM_OFFSET, offsetof (struct vcpu, arch.domain_itm)); |
|---|
| 72 | DEFINE(IA64_VCPU_DOMAIN_ITM_LAST_OFFSET, offsetof (struct vcpu, arch.domain_itm_last)); |
|---|
| 73 | DEFINE(IA64_VCPU_ITLB_OFFSET, offsetof (struct vcpu, arch.itlb)); |
|---|
| 74 | DEFINE(IA64_VCPU_DTLB_OFFSET, offsetof (struct vcpu, arch.dtlb)); |
|---|
| 75 | |
|---|
| 76 | BLANK(); |
|---|
| 77 | |
|---|
| 78 | DEFINE(IA64_DOMAIN_SHADOW_BITMAP_OFFSET, offsetof (struct domain, arch.shadow_bitmap)); |
|---|
| 79 | |
|---|
| 80 | BLANK(); |
|---|
| 81 | |
|---|
| 82 | DEFINE(IA64_CPUINFO_ITM_NEXT_OFFSET, offsetof (struct cpuinfo_ia64, itm_next)); |
|---|
| 83 | DEFINE(IA64_CPUINFO_KSOFTIRQD_OFFSET, offsetof (struct cpuinfo_ia64, ksoftirqd)); |
|---|
| 84 | |
|---|
| 85 | |
|---|
| 86 | BLANK(); |
|---|
| 87 | |
|---|
| 88 | DEFINE(IA64_PT_REGS_B6_OFFSET, offsetof (struct pt_regs, b6)); |
|---|
| 89 | DEFINE(IA64_PT_REGS_B7_OFFSET, offsetof (struct pt_regs, b7)); |
|---|
| 90 | DEFINE(IA64_PT_REGS_AR_CSD_OFFSET, offsetof (struct pt_regs, ar_csd)); |
|---|
| 91 | DEFINE(IA64_PT_REGS_AR_SSD_OFFSET, offsetof (struct pt_regs, ar_ssd)); |
|---|
| 92 | DEFINE(IA64_PT_REGS_R8_OFFSET, offsetof (struct pt_regs, r8)); |
|---|
| 93 | DEFINE(IA64_PT_REGS_R9_OFFSET, offsetof (struct pt_regs, r9)); |
|---|
| 94 | DEFINE(IA64_PT_REGS_R10_OFFSET, offsetof (struct pt_regs, r10)); |
|---|
| 95 | DEFINE(IA64_PT_REGS_R11_OFFSET, offsetof (struct pt_regs, r11)); |
|---|
| 96 | DEFINE(IA64_PT_REGS_CR_IPSR_OFFSET, offsetof (struct pt_regs, cr_ipsr)); |
|---|
| 97 | DEFINE(IA64_PT_REGS_CR_IIP_OFFSET, offsetof (struct pt_regs, cr_iip)); |
|---|
| 98 | DEFINE(IA64_PT_REGS_CR_IFS_OFFSET, offsetof (struct pt_regs, cr_ifs)); |
|---|
| 99 | DEFINE(IA64_PT_REGS_AR_UNAT_OFFSET, offsetof (struct pt_regs, ar_unat)); |
|---|
| 100 | DEFINE(IA64_PT_REGS_AR_PFS_OFFSET, offsetof (struct pt_regs, ar_pfs)); |
|---|
| 101 | DEFINE(IA64_PT_REGS_AR_RSC_OFFSET, offsetof (struct pt_regs, ar_rsc)); |
|---|
| 102 | DEFINE(IA64_PT_REGS_AR_RNAT_OFFSET, offsetof (struct pt_regs, ar_rnat)); |
|---|
| 103 | |
|---|
| 104 | DEFINE(IA64_PT_REGS_AR_BSPSTORE_OFFSET, offsetof (struct pt_regs, ar_bspstore)); |
|---|
| 105 | DEFINE(IA64_PT_REGS_PR_OFFSET, offsetof (struct pt_regs, pr)); |
|---|
| 106 | DEFINE(IA64_PT_REGS_B0_OFFSET, offsetof (struct pt_regs, b0)); |
|---|
| 107 | DEFINE(IA64_PT_REGS_LOADRS_OFFSET, offsetof (struct pt_regs, loadrs)); |
|---|
| 108 | DEFINE(IA64_PT_REGS_R1_OFFSET, offsetof (struct pt_regs, r1)); |
|---|
| 109 | DEFINE(IA64_PT_REGS_R12_OFFSET, offsetof (struct pt_regs, r12)); |
|---|
| 110 | DEFINE(IA64_PT_REGS_R13_OFFSET, offsetof (struct pt_regs, r13)); |
|---|
| 111 | DEFINE(IA64_PT_REGS_AR_FPSR_OFFSET, offsetof (struct pt_regs, ar_fpsr)); |
|---|
| 112 | DEFINE(IA64_PT_REGS_R15_OFFSET, offsetof (struct pt_regs, r15)); |
|---|
| 113 | DEFINE(IA64_PT_REGS_R14_OFFSET, offsetof (struct pt_regs, r14)); |
|---|
| 114 | DEFINE(IA64_PT_REGS_R2_OFFSET, offsetof (struct pt_regs, r2)); |
|---|
| 115 | DEFINE(IA64_PT_REGS_R3_OFFSET, offsetof (struct pt_regs, r3)); |
|---|
| 116 | DEFINE(IA64_PT_REGS_R16_OFFSET, offsetof (struct pt_regs, r16)); |
|---|
| 117 | DEFINE(IA64_PT_REGS_R17_OFFSET, offsetof (struct pt_regs, r17)); |
|---|
| 118 | DEFINE(IA64_PT_REGS_R18_OFFSET, offsetof (struct pt_regs, r18)); |
|---|
| 119 | DEFINE(IA64_PT_REGS_R19_OFFSET, offsetof (struct pt_regs, r19)); |
|---|
| 120 | DEFINE(IA64_PT_REGS_R20_OFFSET, offsetof (struct pt_regs, r20)); |
|---|
| 121 | DEFINE(IA64_PT_REGS_R21_OFFSET, offsetof (struct pt_regs, r21)); |
|---|
| 122 | DEFINE(IA64_PT_REGS_R22_OFFSET, offsetof (struct pt_regs, r22)); |
|---|
| 123 | DEFINE(IA64_PT_REGS_R23_OFFSET, offsetof (struct pt_regs, r23)); |
|---|
| 124 | DEFINE(IA64_PT_REGS_R24_OFFSET, offsetof (struct pt_regs, r24)); |
|---|
| 125 | DEFINE(IA64_PT_REGS_R25_OFFSET, offsetof (struct pt_regs, r25)); |
|---|
| 126 | DEFINE(IA64_PT_REGS_R26_OFFSET, offsetof (struct pt_regs, r26)); |
|---|
| 127 | DEFINE(IA64_PT_REGS_R27_OFFSET, offsetof (struct pt_regs, r27)); |
|---|
| 128 | DEFINE(IA64_PT_REGS_R28_OFFSET, offsetof (struct pt_regs, r28)); |
|---|
| 129 | DEFINE(IA64_PT_REGS_R29_OFFSET, offsetof (struct pt_regs, r29)); |
|---|
| 130 | DEFINE(IA64_PT_REGS_R30_OFFSET, offsetof (struct pt_regs, r30)); |
|---|
| 131 | DEFINE(IA64_PT_REGS_R31_OFFSET, offsetof (struct pt_regs, r31)); |
|---|
| 132 | DEFINE(IA64_PT_REGS_AR_CCV_OFFSET, offsetof (struct pt_regs, ar_ccv)); |
|---|
| 133 | DEFINE(IA64_PT_REGS_F6_OFFSET, offsetof (struct pt_regs, f6)); |
|---|
| 134 | DEFINE(IA64_PT_REGS_F7_OFFSET, offsetof (struct pt_regs, f7)); |
|---|
| 135 | DEFINE(IA64_PT_REGS_F8_OFFSET, offsetof (struct pt_regs, f8)); |
|---|
| 136 | DEFINE(IA64_PT_REGS_F9_OFFSET, offsetof (struct pt_regs, f9)); |
|---|
| 137 | DEFINE(IA64_PT_REGS_F10_OFFSET, offsetof (struct pt_regs, f10)); |
|---|
| 138 | DEFINE(IA64_PT_REGS_F11_OFFSET, offsetof (struct pt_regs, f11)); |
|---|
| 139 | DEFINE(IA64_PT_REGS_R4_OFFSET, offsetof (struct pt_regs, r4)); |
|---|
| 140 | DEFINE(IA64_PT_REGS_R5_OFFSET, offsetof (struct pt_regs, r5)); |
|---|
| 141 | DEFINE(IA64_PT_REGS_R6_OFFSET, offsetof (struct pt_regs, r6)); |
|---|
| 142 | DEFINE(IA64_PT_REGS_R7_OFFSET, offsetof (struct pt_regs, r7)); |
|---|
| 143 | DEFINE(IA64_PT_REGS_EML_UNAT_OFFSET, offsetof (struct pt_regs, eml_unat)); |
|---|
| 144 | DEFINE(IA64_VCPU_IIPA_OFFSET, offsetof (struct vcpu, arch.arch_vmx.cr_iipa)); |
|---|
| 145 | DEFINE(IA64_VCPU_ISR_OFFSET, offsetof (struct vcpu, arch.arch_vmx.cr_isr)); |
|---|
| 146 | DEFINE(IA64_VCPU_CAUSE_OFFSET, offsetof (struct vcpu, arch.arch_vmx.cause)); |
|---|
| 147 | DEFINE(IA64_VCPU_OPCODE_OFFSET, offsetof (struct vcpu, arch.arch_vmx.opcode)); |
|---|
| 148 | DEFINE(SWITCH_MPTA_OFFSET,offsetof(struct vcpu ,arch.arch_vmx.mpta)); |
|---|
| 149 | DEFINE(IA64_PT_REGS_R16_SLOT, (((offsetof(struct pt_regs, r16)-sizeof(struct pt_regs))>>3)&0x3f)); |
|---|
| 150 | DEFINE(IA64_VCPU_FLAGS_OFFSET,offsetof(struct vcpu ,arch.arch_vmx.flags)); |
|---|
| 151 | DEFINE(IA64_VCPU_MODE_FLAGS_OFFSET,offsetof(struct vcpu, arch.mode_flags)); |
|---|
| 152 | |
|---|
| 153 | BLANK(); |
|---|
| 154 | |
|---|
| 155 | DEFINE(IA64_SWITCH_STACK_CALLER_UNAT_OFFSET, offsetof (struct switch_stack, caller_unat)); |
|---|
| 156 | DEFINE(IA64_SWITCH_STACK_AR_FPSR_OFFSET, offsetof (struct switch_stack, ar_fpsr)); |
|---|
| 157 | DEFINE(IA64_SWITCH_STACK_F2_OFFSET, offsetof (struct switch_stack, f2)); |
|---|
| 158 | DEFINE(IA64_SWITCH_STACK_F3_OFFSET, offsetof (struct switch_stack, f3)); |
|---|
| 159 | DEFINE(IA64_SWITCH_STACK_F4_OFFSET, offsetof (struct switch_stack, f4)); |
|---|
| 160 | DEFINE(IA64_SWITCH_STACK_F5_OFFSET, offsetof (struct switch_stack, f5)); |
|---|
| 161 | DEFINE(IA64_SWITCH_STACK_F12_OFFSET, offsetof (struct switch_stack, f12)); |
|---|
| 162 | DEFINE(IA64_SWITCH_STACK_F13_OFFSET, offsetof (struct switch_stack, f13)); |
|---|
| 163 | DEFINE(IA64_SWITCH_STACK_F14_OFFSET, offsetof (struct switch_stack, f14)); |
|---|
| 164 | DEFINE(IA64_SWITCH_STACK_F15_OFFSET, offsetof (struct switch_stack, f15)); |
|---|
| 165 | DEFINE(IA64_SWITCH_STACK_F16_OFFSET, offsetof (struct switch_stack, f16)); |
|---|
| 166 | DEFINE(IA64_SWITCH_STACK_F17_OFFSET, offsetof (struct switch_stack, f17)); |
|---|
| 167 | DEFINE(IA64_SWITCH_STACK_F18_OFFSET, offsetof (struct switch_stack, f18)); |
|---|
| 168 | DEFINE(IA64_SWITCH_STACK_F19_OFFSET, offsetof (struct switch_stack, f19)); |
|---|
| 169 | DEFINE(IA64_SWITCH_STACK_F20_OFFSET, offsetof (struct switch_stack, f20)); |
|---|
| 170 | DEFINE(IA64_SWITCH_STACK_F21_OFFSET, offsetof (struct switch_stack, f21)); |
|---|
| 171 | DEFINE(IA64_SWITCH_STACK_F22_OFFSET, offsetof (struct switch_stack, f22)); |
|---|
| 172 | DEFINE(IA64_SWITCH_STACK_F23_OFFSET, offsetof (struct switch_stack, f23)); |
|---|
| 173 | DEFINE(IA64_SWITCH_STACK_F24_OFFSET, offsetof (struct switch_stack, f24)); |
|---|
| 174 | DEFINE(IA64_SWITCH_STACK_F25_OFFSET, offsetof (struct switch_stack, f25)); |
|---|
| 175 | DEFINE(IA64_SWITCH_STACK_F26_OFFSET, offsetof (struct switch_stack, f26)); |
|---|
| 176 | DEFINE(IA64_SWITCH_STACK_F27_OFFSET, offsetof (struct switch_stack, f27)); |
|---|
| 177 | DEFINE(IA64_SWITCH_STACK_F28_OFFSET, offsetof (struct switch_stack, f28)); |
|---|
| 178 | DEFINE(IA64_SWITCH_STACK_F29_OFFSET, offsetof (struct switch_stack, f29)); |
|---|
| 179 | DEFINE(IA64_SWITCH_STACK_F30_OFFSET, offsetof (struct switch_stack, f30)); |
|---|
| 180 | DEFINE(IA64_SWITCH_STACK_F31_OFFSET, offsetof (struct switch_stack, f31)); |
|---|
| 181 | DEFINE(IA64_SWITCH_STACK_R4_OFFSET, offsetof (struct switch_stack, r4)); |
|---|
| 182 | DEFINE(IA64_SWITCH_STACK_R5_OFFSET, offsetof (struct switch_stack, r5)); |
|---|
| 183 | DEFINE(IA64_SWITCH_STACK_R6_OFFSET, offsetof (struct switch_stack, r6)); |
|---|
| 184 | DEFINE(IA64_SWITCH_STACK_R7_OFFSET, offsetof (struct switch_stack, r7)); |
|---|
| 185 | DEFINE(IA64_SWITCH_STACK_B0_OFFSET, offsetof (struct switch_stack, b0)); |
|---|
| 186 | DEFINE(IA64_SWITCH_STACK_B1_OFFSET, offsetof (struct switch_stack, b1)); |
|---|
| 187 | DEFINE(IA64_SWITCH_STACK_B2_OFFSET, offsetof (struct switch_stack, b2)); |
|---|
| 188 | DEFINE(IA64_SWITCH_STACK_B3_OFFSET, offsetof (struct switch_stack, b3)); |
|---|
| 189 | DEFINE(IA64_SWITCH_STACK_B4_OFFSET, offsetof (struct switch_stack, b4)); |
|---|
| 190 | DEFINE(IA64_SWITCH_STACK_B5_OFFSET, offsetof (struct switch_stack, b5)); |
|---|
| 191 | DEFINE(IA64_SWITCH_STACK_AR_PFS_OFFSET, offsetof (struct switch_stack, ar_pfs)); |
|---|
| 192 | DEFINE(IA64_SWITCH_STACK_AR_LC_OFFSET, offsetof (struct switch_stack, ar_lc)); |
|---|
| 193 | DEFINE(IA64_SWITCH_STACK_AR_UNAT_OFFSET, offsetof (struct switch_stack, ar_unat)); |
|---|
| 194 | DEFINE(IA64_SWITCH_STACK_AR_RNAT_OFFSET, offsetof (struct switch_stack, ar_rnat)); |
|---|
| 195 | DEFINE(IA64_SWITCH_STACK_AR_BSPSTORE_OFFSET, offsetof (struct switch_stack, ar_bspstore)); |
|---|
| 196 | DEFINE(IA64_SWITCH_STACK_PR_OFFSET, offsetof (struct switch_stack, pr)); |
|---|
| 197 | |
|---|
| 198 | BLANK(); |
|---|
| 199 | |
|---|
| 200 | DEFINE(IA64_VPD_BASE_OFFSET, offsetof (struct vcpu, arch.privregs)); |
|---|
| 201 | DEFINE(IA64_VPD_VIFS_OFFSET, offsetof (mapped_regs_t, ifs)); |
|---|
| 202 | DEFINE(IA64_VLSAPIC_INSVC_BASE_OFFSET, offsetof (struct vcpu, arch.insvc[0])); |
|---|
| 203 | DEFINE(IA64_VPD_VPTA_OFFSET, offsetof (struct mapped_regs, pta)); |
|---|
| 204 | DEFINE(IA64_VPD_CR_VPTA_OFFSET, offsetof (cr_t, pta)); |
|---|
| 205 | DEFINE(XXX_THASH_SIZE, sizeof (thash_data_t)); |
|---|
| 206 | |
|---|
| 207 | BLANK(); |
|---|
| 208 | DEFINE(IA64_CPUINFO_NSEC_PER_CYC_OFFSET, offsetof (struct cpuinfo_ia64, nsec_per_cyc)); |
|---|
| 209 | DEFINE(IA64_TIMESPEC_TV_NSEC_OFFSET, offsetof (struct timespec, tv_nsec)); |
|---|
| 210 | |
|---|
| 211 | |
|---|
| 212 | DEFINE(CLONE_IDLETASK_BIT, 12); |
|---|
| 213 | DEFINE(CLONE_SETTLS_BIT, 19); |
|---|
| 214 | DEFINE(IA64_CPUINFO_NSEC_PER_CYC_OFFSET, offsetof (struct cpuinfo_ia64, nsec_per_cyc)); |
|---|
| 215 | |
|---|
| 216 | BLANK(); |
|---|
| 217 | DEFINE(IA64_KR_CURRENT_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_CURRENT])); |
|---|
| 218 | DEFINE(IA64_KR_PT_BASE_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_PT_BASE])); |
|---|
| 219 | DEFINE(IA64_KR_IO_BASE_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_IO_BASE])); |
|---|
| 220 | DEFINE(IA64_KR_PERCPU_DATA_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_PER_CPU_DATA])); |
|---|
| 221 | DEFINE(IA64_KR_IO_BASE_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_IO_BASE])); |
|---|
| 222 | DEFINE(IA64_KR_CURRENT_STACK_OFFSET, offsetof (cpu_kr_ia64_t, _kr[IA64_KR_CURRENT_STACK])); |
|---|
| 223 | |
|---|
| 224 | #ifdef PERF_COUNTERS |
|---|
| 225 | BLANK(); |
|---|
| 226 | DEFINE(IA64_PERFC_recover_to_page_fault, PERFC_recover_to_page_fault); |
|---|
| 227 | DEFINE(IA64_PERFC_recover_to_break_fault, PERFC_recover_to_break_fault); |
|---|
| 228 | DEFINE(IA64_PERFC_fast_vhpt_translate, PERFC_fast_vhpt_translate); |
|---|
| 229 | DEFINE(IA64_PERFC_fast_hyperprivop, PERFC_fast_hyperprivop); |
|---|
| 230 | DEFINE(IA64_PERFC_fast_reflect, PERFC_fast_reflect); |
|---|
| 231 | #endif |
|---|
| 232 | |
|---|
| 233 | BLANK(); |
|---|
| 234 | DEFINE(IA64_CPUINFO_PTCE_BASE_OFFSET, |
|---|
| 235 | offsetof(struct cpuinfo_ia64, ptce_base)); |
|---|
| 236 | DEFINE(IA64_CPUINFO_PTCE_COUNT_OFFSET, |
|---|
| 237 | offsetof(struct cpuinfo_ia64, ptce_count)); |
|---|
| 238 | DEFINE(IA64_CPUINFO_PTCE_STRIDE_OFFSET, |
|---|
| 239 | offsetof(struct cpuinfo_ia64, ptce_stride)); |
|---|
| 240 | |
|---|
| 241 | BLANK(); |
|---|
| 242 | DEFINE(IA64_MCA_CPU_PROC_STATE_DUMP_OFFSET, |
|---|
| 243 | offsetof(struct ia64_mca_cpu, proc_state_dump)); |
|---|
| 244 | DEFINE(IA64_MCA_CPU_STACK_OFFSET, |
|---|
| 245 | offsetof(struct ia64_mca_cpu, stack)); |
|---|
| 246 | DEFINE(IA64_MCA_CPU_STACKFRAME_OFFSET, |
|---|
| 247 | offsetof(struct ia64_mca_cpu, stackframe)); |
|---|
| 248 | DEFINE(IA64_MCA_CPU_RBSTORE_OFFSET, |
|---|
| 249 | offsetof(struct ia64_mca_cpu, rbstore)); |
|---|
| 250 | |
|---|
| 251 | DEFINE(IA64_DOMAIN_SHARED_INFO_OFFSET, |
|---|
| 252 | offsetof(struct domain, shared_info)); |
|---|
| 253 | DEFINE(IA64_DOMAIN_SHARED_INFO_VA_OFFSET, |
|---|
| 254 | offsetof(struct domain, arch.shared_info_va)); |
|---|
| 255 | DEFINE(IA64_DOMAIN_FLAGS_OFFSET, |
|---|
| 256 | offsetof(struct domain, arch.flags)); |
|---|
| 257 | |
|---|
| 258 | DEFINE(IA64_VCPU_VHPT_MADDR_OFFSET, |
|---|
| 259 | offsetof(struct vcpu, arch.vhpt_maddr)); |
|---|
| 260 | |
|---|
| 261 | BLANK(); |
|---|
| 262 | DEFINE(IA64_MCA_TLB_INFO_SIZE, sizeof(struct ia64_mca_tlb_info)); |
|---|
| 263 | DEFINE(IA64_MCA_PERCPU_OFFSET, |
|---|
| 264 | offsetof(struct ia64_mca_tlb_info, percpu_paddr)); |
|---|
| 265 | } |
|---|