Lines Matching defs:paca_struct
65 struct paca_struct { struct
74 struct lppaca *lppaca_ptr; /* Pointer to LpPaca for PLIC */
84 u16 lock_token; /* Constant 0x8000, used in locks */
85 u16 paca_index; /* Logical processor number */
87 u16 paca_index; /* Logical processor number */
88 u16 lock_token; /* Constant 0x8000, used in locks */
91 u64 kernel_toc; /* Kernel TOC address */
92 u64 kernelbase; /* Base address of kernel */
93 u64 kernel_msr; /* MSR while running in kernel */
94 void *emergency_sp; /* pointer to emergency stack */
95 u64 data_offset; /* per cpu data offset */
96 s16 hw_cpu_id; /* Physical processor number */
97 u8 cpu_start; /* At startup, processor spins until */
99 u8 kexec_state; /* set when kexec down has irqs off */
102 struct slb_shadow *slb_shadow_ptr;
104 struct dtl_entry *dispatch_log;
105 struct dtl_entry *dispatch_log_end;
107 u64 dscr_default; /* per-CPU default DSCR */
114 u64 exgen[EX_SIZE] __attribute__((aligned(0x80)));
118 u16 vmalloc_sllp;
119 u8 slb_cache_ptr;
120 u8 stab_rr; /* stab/slb round-robin counter */
122 u8 in_kernel_slb_handler;
124 u32 slb_used_bitmap; /* Bitmaps for first 32 SLB entries. */
125 u32 slb_kern_bitmap;
126 u32 slb_cache[SLB_CACHE_ENTRIES];
131 u64 exgen[8] __aligned(0x40);
134 pgd_t *kernel_pgd; /* Kernel PGD */
137 struct tlb_core_data *tcd_ptr;
143 u64 extlb[12][EX_TLB_SIZE / sizeof(u64)];
144 u64 exmc[8]; /* used for machine checks */
145 u64 excrit[8]; /* used for crit interrupts */
146 u64 exdbg[8]; /* used for debug interrupts */
149 void *mc_kstack;
150 void *crit_kstack;
151 void *dbg_kstack;
153 struct tlb_core_data tcd;
157 unsigned char mm_ctx_low_slices_psize[BITS_PER_LONG / BITS_PER_BYTE];
158 unsigned char mm_ctx_high_slices_psize[SLICE_ARRAY_SIZE];
164 struct task_struct *__current; /* Pointer to current */
165 u64 kstack; /* Saved Kernel stack addr */
166 u64 saved_r1; /* r1 save for RTAS calls or PM or EE=0 */
167 u64 saved_msr; /* MSR saved here by enter_rtas */
169 u64 exit_save_r1; /* Syscall/interrupt R1 save */
172 u16 trap_save; /* Used when bad stack is encountered */
175 u8 hsrr_valid; /* HSRRs set for HRFID */
176 u8 srr_valid; /* SRRs set for RFID */
178 u8 irq_soft_mask; /* mask for irq soft masking */
179 u8 irq_happened; /* irq happened while soft-disabled */
180 u8 irq_work_pending; /* IRQ_WORK interrupt while soft-disable */
182 u8 pmcregs_in_use; /* pseries puts this in lppaca */
184 u64 sprg_vdso; /* Saved user-visible sprg */
186 u64 tm_scratch; /* TM scratch area for reclaim */
192 unsigned long idle_state;
193 union {
216 u64 exnmi[EX_SIZE]; /* used for system reset (nmi) */
217 u64 exmc[EX_SIZE]; /* used for machine checks */
221 void *nmi_emergency_sp;
222 void *mc_emergency_sp;
224 u16 in_nmi; /* In nmi handler */
230 u16 in_mce;
231 u8 hmi_event_available; /* HMI event is available */
232 u8 hmi_p9_special_emu; /* HMI P9 special emulation */
233 u32 hmi_irqs; /* HMI irq stat */
235 u8 ftrace_enabled; /* Hard disable ftrace */
238 struct cpu_accounting_data accounting;
239 u64 dtl_ridx; /* read index in dispatch log */
240 struct dtl_entry *dtl_curr; /* pointer corresponding to dtl_ridx */
245 struct kvmppc_book3s_shadow_vcpu shadow_vcpu;
247 struct kvmppc_host_state kvm_hstate;
253 struct sibling_subcore_state *sibling_subcore_state;
261 u64 exrfi[EX_SIZE] __aligned(0x80);
262 void *rfi_flush_fallback_area;
263 u64 l1d_flush_size;
289 extern struct paca_struct **paca_ptrs; argument