Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm/arm/machdep.c
Show First 20 Lines • Show All 406 Lines • ▼ Show 20 Lines | spinlock_exit(void) | ||||
if (td->td_md.md_spinlock_count == 0) | if (td->td_md.md_spinlock_count == 0) | ||||
restore_interrupts(cspr); | restore_interrupts(cspr); | ||||
} | } | ||||
/* | /* | ||||
* Clear registers on exec | * Clear registers on exec | ||||
*/ | */ | ||||
void | void | ||||
exec_setregs(struct thread *td, struct image_params *imgp, u_long stack) | exec_setregs(struct thread *td, struct image_params *imgp, uintptr_t stack) | ||||
{ | { | ||||
struct trapframe *tf = td->td_frame; | struct trapframe *tf = td->td_frame; | ||||
memset(tf, 0, sizeof(*tf)); | memset(tf, 0, sizeof(*tf)); | ||||
tf->tf_usr_sp = stack; | tf->tf_usr_sp = stack; | ||||
tf->tf_usr_lr = imgp->entry_addr; | tf->tf_usr_lr = imgp->entry_addr; | ||||
tf->tf_svc_lr = 0x77777777; | tf->tf_svc_lr = 0x77777777; | ||||
tf->tf_pc = imgp->entry_addr; | tf->tf_pc = imgp->entry_addr; | ||||
▲ Show 20 Lines • Show All 883 Lines • Show Last 20 Lines |