Lines Matching refs:lc
195 struct lowcore *lc; in pcpu_alloc_lowcore() local
208 lc = pcpu->lowcore; in pcpu_alloc_lowcore()
209 memcpy(lc, &S390_lowcore, 512); in pcpu_alloc_lowcore()
210 memset((char *) lc + 512, 0, sizeof(*lc) - 512); in pcpu_alloc_lowcore()
211 lc->async_stack = async_stack + ASYNC_FRAME_OFFSET; in pcpu_alloc_lowcore()
212 lc->panic_stack = panic_stack + PANIC_FRAME_OFFSET; in pcpu_alloc_lowcore()
213 lc->cpu_nr = cpu; in pcpu_alloc_lowcore()
214 lc->spinlock_lockval = arch_spin_lockval(cpu); in pcpu_alloc_lowcore()
215 lc->spinlock_index = 0; in pcpu_alloc_lowcore()
216 lc->br_r1_trampoline = 0x07f1; /* br %r1 */ in pcpu_alloc_lowcore()
217 if (nmi_alloc_per_cpu(lc)) in pcpu_alloc_lowcore()
219 if (vdso_alloc_per_cpu(lc)) in pcpu_alloc_lowcore()
221 lowcore_ptr[cpu] = lc; in pcpu_alloc_lowcore()
222 pcpu_sigp_retry(pcpu, SIGP_SET_PREFIX, (u32)(unsigned long) lc); in pcpu_alloc_lowcore()
226 nmi_free_per_cpu(lc); in pcpu_alloc_lowcore()
255 struct lowcore *lc = pcpu->lowcore; in pcpu_prepare_secondary() local
259 lc->cpu_nr = cpu; in pcpu_prepare_secondary()
260 lc->spinlock_lockval = arch_spin_lockval(cpu); in pcpu_prepare_secondary()
261 lc->spinlock_index = 0; in pcpu_prepare_secondary()
262 lc->percpu_offset = __per_cpu_offset[cpu]; in pcpu_prepare_secondary()
263 lc->kernel_asce = S390_lowcore.kernel_asce; in pcpu_prepare_secondary()
264 lc->machine_flags = S390_lowcore.machine_flags; in pcpu_prepare_secondary()
265 lc->user_timer = lc->system_timer = lc->steal_timer = 0; in pcpu_prepare_secondary()
266 __ctl_store(lc->cregs_save_area, 0, 15); in pcpu_prepare_secondary()
267 save_access_regs((unsigned int *) lc->access_regs_save_area); in pcpu_prepare_secondary()
268 memcpy(lc->stfle_fac_list, S390_lowcore.stfle_fac_list, in pcpu_prepare_secondary()
269 sizeof(lc->stfle_fac_list)); in pcpu_prepare_secondary()
270 memcpy(lc->alt_stfle_fac_list, S390_lowcore.alt_stfle_fac_list, in pcpu_prepare_secondary()
271 sizeof(lc->alt_stfle_fac_list)); in pcpu_prepare_secondary()
277 struct lowcore *lc = pcpu->lowcore; in pcpu_attach_task() local
279 lc->kernel_stack = (unsigned long) task_stack_page(tsk) in pcpu_attach_task()
281 lc->current_task = (unsigned long) tsk; in pcpu_attach_task()
282 lc->lpp = LPP_MAGIC; in pcpu_attach_task()
283 lc->current_pid = tsk->pid; in pcpu_attach_task()
284 lc->user_timer = tsk->thread.user_timer; in pcpu_attach_task()
285 lc->guest_timer = tsk->thread.guest_timer; in pcpu_attach_task()
286 lc->system_timer = tsk->thread.system_timer; in pcpu_attach_task()
287 lc->hardirq_timer = tsk->thread.hardirq_timer; in pcpu_attach_task()
288 lc->softirq_timer = tsk->thread.softirq_timer; in pcpu_attach_task()
289 lc->steal_timer = 0; in pcpu_attach_task()
294 struct lowcore *lc = pcpu->lowcore; in pcpu_start_fn() local
296 lc->restart_stack = lc->kernel_stack; in pcpu_start_fn()
297 lc->restart_fn = (unsigned long) func; in pcpu_start_fn()
298 lc->restart_data = (unsigned long) data; in pcpu_start_fn()
299 lc->restart_source = -1UL; in pcpu_start_fn()
309 struct lowcore *lc = lowcore_ptr[pcpu - pcpu_devices]; in pcpu_delegate() local
318 mem_assign_absolute(lc->restart_stack, stack); in pcpu_delegate()
319 mem_assign_absolute(lc->restart_fn, (unsigned long) func); in pcpu_delegate()
320 mem_assign_absolute(lc->restart_data, (unsigned long) data); in pcpu_delegate()
321 mem_assign_absolute(lc->restart_source, source_cpu); in pcpu_delegate()