Lines Matching +defs:p +defs:top
175 int copy_thread(struct task_struct *p, const struct kernel_clone_args *args)
183 childksp = (unsigned long)task_stack_page(p) + THREAD_SIZE;
189 p->thread.sched_cfa = 0;
190 p->thread.csr_euen = 0;
191 p->thread.csr_crmd = csr_read32(LOONGARCH_CSR_CRMD);
192 p->thread.csr_prmd = csr_read32(LOONGARCH_CSR_PRMD);
193 p->thread.csr_ecfg = csr_read32(LOONGARCH_CSR_ECFG);
196 p->thread.reg03 = childksp;
197 p->thread.reg23 = (unsigned long)args->fn;
198 p->thread.reg24 = (unsigned long)args->fn_arg;
199 p->thread.reg01 = (unsigned long)ret_from_kernel_thread_asm;
200 p->thread.sched_ra = (unsigned long)ret_from_kernel_thread_asm;
202 childregs->csr_euen = p->thread.csr_euen;
203 childregs->csr_crmd = p->thread.csr_crmd;
204 childregs->csr_prmd = p->thread.csr_prmd;
205 childregs->csr_ecfg = p->thread.csr_ecfg;
215 p->thread.reg03 = (unsigned long) childregs;
216 p->thread.reg01 = (unsigned long) ret_from_fork_asm;
217 p->thread.sched_ra = (unsigned long) ret_from_fork_asm;
229 ptrace_hw_copy_thread(p);
230 clear_tsk_thread_flag(p, TIF_USEDFPU);
231 clear_tsk_thread_flag(p, TIF_USEDSIMD);
232 clear_tsk_thread_flag(p, TIF_USEDLBT);
233 clear_tsk_thread_flag(p, TIF_LSX_CTX_LIVE);
234 clear_tsk_thread_flag(p, TIF_LASX_CTX_LIVE);
235 clear_tsk_thread_flag(p, TIF_LBT_CTX_LIVE);
325 unsigned long top = TASK_SIZE & PAGE_MASK;
329 top -= PAGE_ALIGN(current->thread.vdso->size);
330 top -= VVAR_SIZE;
334 top -= VDSO_RANDOMIZE_SIZE;
337 return top;