Home
last modified time | relevance | path

Searched refs:childregs (Results 1 – 17 of 17) sorted by relevance

/linux/arch/xtensa/kernel/
A Dprocess.c216 SPILL_SLOT(childregs, 1) = (unsigned long)childregs; in copy_thread()
217 SPILL_SLOT(childregs, 0) = 0; in copy_thread()
239 *childregs = *regs; in copy_thread()
240 childregs->areg[1] = usp; in copy_thread()
241 childregs->areg[2] = 0; in copy_thread()
258 int len = childregs->wmask & ~0xf; in copy_thread()
265 childregs->wmask = 1; in copy_thread()
266 childregs->windowstart = 1; in copy_thread()
267 childregs->windowbase = 0; in copy_thread()
269 int len = childregs->wmask & ~0xf; in copy_thread()
[all …]
/linux/arch/microblaze/kernel/
A Dprocess.c59 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
70 childregs->pt_mode = 1; in copy_thread()
71 local_save_flags(childregs->msr); in copy_thread()
76 *childregs = *current_pt_regs(); in copy_thread()
78 childregs->r1 = usp; in copy_thread()
82 childregs->msr |= MSR_UMS; in copy_thread()
94 childregs->msr &= ~MSR_EIP; in copy_thread()
95 childregs->msr |= MSR_IE; in copy_thread()
96 childregs->msr &= ~MSR_VM; in copy_thread()
97 childregs->msr |= MSR_VMS; in copy_thread()
[all …]
/linux/arch/hexagon/kernel/
A Dprocess.c58 struct pt_regs *childregs; in copy_thread() local
61 childregs = (struct pt_regs *) (((unsigned long) ti + THREAD_SIZE) - in copy_thread()
62 sizeof(*childregs)); in copy_thread()
64 ti->regs = childregs; in copy_thread()
72 ss = (struct hexagon_switch_stack *) ((unsigned long) childregs - in copy_thread()
77 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
81 pt_set_kmode(childregs); in copy_thread()
84 memcpy(childregs, current_pt_regs(), sizeof(*childregs)); in copy_thread()
88 pt_set_rte_sp(childregs, usp); in copy_thread()
91 childregs->r00 = 0; in copy_thread()
[all …]
/linux/arch/s390/kernel/
A Dprocess.c103 struct pt_regs childregs; in copy_thread() member
135 memset(&frame->childregs, 0, sizeof(struct pt_regs)); in copy_thread()
138 frame->childregs.psw.addr = in copy_thread()
141 frame->childregs.gprs[10] = arg; in copy_thread()
142 frame->childregs.gprs[11] = (unsigned long)do_exit; in copy_thread()
143 frame->childregs.orig_gpr2 = -1; in copy_thread()
144 frame->childregs.last_break = 1; in copy_thread()
147 frame->childregs = *current_pt_regs(); in copy_thread()
149 frame->childregs.flags = 0; in copy_thread()
151 frame->childregs.gprs[15] = new_stackp; in copy_thread()
[all …]
/linux/arch/sh/kernel/
A Dprocess_32.c99 struct pt_regs *childregs; in copy_thread() local
115 childregs = task_pt_regs(p); in copy_thread()
116 p->thread.sp = (unsigned long) childregs; in copy_thread()
118 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
120 childregs->regs[4] = arg; in copy_thread()
121 childregs->regs[5] = usp; in copy_thread()
122 childregs->sr = SR_MD; in copy_thread()
124 childregs->sr |= SR_FD; in copy_thread()
131 *childregs = *current_pt_regs(); in copy_thread()
134 childregs->regs[15] = usp; in copy_thread()
[all …]
/linux/arch/h8300/kernel/
A Dprocess.c111 struct pt_regs *childregs; in copy_thread() local
113 childregs = (struct pt_regs *) (THREAD_SIZE + task_stack_page(p)) - 1; in copy_thread()
116 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
117 childregs->retpc = (unsigned long) ret_from_kernel_thread; in copy_thread()
118 childregs->er4 = topstk; /* arg */ in copy_thread()
119 childregs->er5 = usp; /* fn */ in copy_thread()
121 *childregs = *current_pt_regs(); in copy_thread()
122 childregs->er0 = 0; in copy_thread()
123 childregs->retpc = (unsigned long) ret_from_fork; in copy_thread()
126 p->thread.ksp = (unsigned long)childregs; in copy_thread()
/linux/arch/csky/kernel/
A Dprocess.c40 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
46 childstack = ((struct switch_stack *) childregs) - 1; in copy_thread()
53 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
57 childregs->sr = mfcr("psr"); in copy_thread()
59 *childregs = *(current_pt_regs()); in copy_thread()
61 childregs->usp = usp; in copy_thread()
63 task_thread_info(p)->tp_value = childregs->tls in copy_thread()
66 childregs->a0 = 0; in copy_thread()
/linux/arch/nds32/kernel/
A Dprocess.c155 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
160 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
166 *childregs = *current_pt_regs(); in copy_thread()
168 childregs->sp = stack_start; in copy_thread()
170 childregs->uregs[0] = 0; in copy_thread()
171 childregs->osp = 0; in copy_thread()
173 childregs->uregs[25] = tls; in copy_thread()
177 p->thread.cpu_context.sp = (unsigned long)childregs; in copy_thread()
196 childregs->lb = 0; in copy_thread()
197 childregs->le = 0; in copy_thread()
[all …]
/linux/arch/riscv/kernel/
A Dprocess.c125 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
130 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
131 childregs->gp = gp_in_global; in copy_thread()
133 childregs->status = SR_PP | SR_PIE; in copy_thread()
139 *childregs = *(current_pt_regs()); in copy_thread()
141 childregs->sp = usp; in copy_thread()
143 childregs->tp = tls; in copy_thread()
144 childregs->a0 = 0; /* Return value of fork() */ in copy_thread()
147 p->thread.sp = (unsigned long)childregs; /* kernel sp */ in copy_thread()
/linux/arch/sparc/kernel/
A Dprocess_32.c266 struct pt_regs *childregs, *regs = current_pt_regs(); local
297 p->thread.kregs = childregs;
305 childregs->u_regs[UREG_G1] = sp; /* function */
306 childregs->u_regs[UREG_G2] = arg;
307 psr = childregs->psr = get_psr();
313 childregs->u_regs[UREG_FP] = sp;
346 childregs->u_regs[UREG_FP] = (unsigned long)childstack;
351 childregs->psr &= ~PSR_EF;
356 childregs->u_regs[UREG_I0] = current->pid;
357 childregs->u_regs[UREG_I1] = 1;
[all …]
/linux/arch/nios2/kernel/
A Dprocess.c106 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
110 ((struct switch_stack *)childregs) - 1; in copy_thread()
119 childregs->estatus = STATUS_PIE; in copy_thread()
120 childregs->sp = (unsigned long) childstack; in copy_thread()
123 p->thread.kregs = childregs; in copy_thread()
128 *childregs = *regs; in copy_thread()
129 childregs->r2 = 0; /* Set the return value for the child. */ in copy_thread()
130 childregs->r7 = 0; in copy_thread()
135 p->thread.kregs = childregs; in copy_thread()
139 childregs->sp = usp; in copy_thread()
/linux/arch/arm64/kernel/
A Dprocess.c321 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
337 *childregs = *current_pt_regs(); in copy_thread()
338 childregs->regs[0] = 0; in copy_thread()
348 childregs->compat_sp = stack_start; in copy_thread()
350 childregs->sp = stack_start; in copy_thread()
367 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
368 childregs->pstate = PSR_MODE_EL1h | PSR_IL_BIT; in copy_thread()
374 p->thread.cpu_context.sp = (unsigned long)childregs; in copy_thread()
379 p->thread.cpu_context.fp = (unsigned long)childregs->stackframe; in copy_thread()
/linux/arch/alpha/kernel/
A Dprocess.c244 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
248 childstack = ((struct switch_stack *) childregs) - 1; in copy_thread()
259 childregs->hae = alpha_mv.hae_cache; in copy_thread()
273 *childregs = *regs; in copy_thread()
274 childregs->r0 = 0; in copy_thread()
275 childregs->r19 = 0; in copy_thread()
276 childregs->r20 = 1; /* OSF/1 has some strange fork() semantics. */ in copy_thread()
/linux/arch/x86/kernel/
A Dprocess.c138 struct pt_regs *childregs; in copy_thread() local
141 childregs = task_pt_regs(p); in copy_thread()
142 fork_frame = container_of(childregs, struct fork_frame, regs); in copy_thread()
145 frame->bp = encode_frame_pointer(childregs); in copy_thread()
162 p->thread.sp0 = (unsigned long) (childregs + 1); in copy_thread()
177 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
189 *childregs = *current_pt_regs(); in copy_thread()
190 childregs->ax = 0; in copy_thread()
192 childregs->sp = sp; in copy_thread()
209 childregs->sp = 0; in copy_thread()
[all …]
/linux/arch/arm/kernel/
A Dprocess.c240 struct pt_regs *childregs = task_pt_regs(p); in copy_thread() local
255 *childregs = *current_pt_regs(); in copy_thread()
256 childregs->ARM_r0 = 0; in copy_thread()
258 childregs->ARM_sp = stack_start; in copy_thread()
260 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
263 childregs->ARM_cpsr = SVC_MODE; in copy_thread()
266 thread->cpu_context.sp = (unsigned long)childregs; in copy_thread()
/linux/arch/mips/kernel/
A Dprocess.c113 struct pt_regs *childregs, *regs = current_pt_regs(); in copy_thread() local
119 childregs = (struct pt_regs *) childksp - 1; in copy_thread()
121 childksp = (unsigned long) childregs; in copy_thread()
126 memset(childregs, 0, sizeof(struct pt_regs)); in copy_thread()
137 childregs->cp0_status = status; in copy_thread()
142 *childregs = *regs; in copy_thread()
143 childregs->regs[7] = 0; /* Clear error flag */ in copy_thread()
144 childregs->regs[2] = 0; /* Child gets zero as return value */ in copy_thread()
146 childregs->regs[29] = usp; in copy_thread()
148 p->thread.reg29 = (unsigned long) childregs; in copy_thread()
[all …]
/linux/arch/powerpc/kernel/
A Dprocess.c1687 struct pt_regs *childregs, *kregs; in copy_thread() local
1702 childregs = (struct pt_regs *) sp; in copy_thread()
1712 childregs->softe = IRQS_ENABLED; in copy_thread()
1714 childregs->gpr[15] = kthread_arg; in copy_thread()
1721 *childregs = *regs; in copy_thread()
1723 childregs->gpr[1] = usp; in copy_thread()
1724 p->thread.regs = childregs; in copy_thread()
1730 childregs->gpr[13] = tls; in copy_thread()
1732 childregs->gpr[2] = tls; in copy_thread()
1740 childregs->msr &= ~(MSR_FP|MSR_VEC|MSR_VSX); in copy_thread()
[all …]

Completed in 22 milliseconds