Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm64/arm64/machdep.c
Show First 20 Lines • Show All 624 Lines • ▼ Show 20 Lines | |||||
sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) | sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) | ||||
{ | { | ||||
struct thread *td; | struct thread *td; | ||||
struct proc *p; | struct proc *p; | ||||
struct trapframe *tf; | struct trapframe *tf; | ||||
struct sigframe *fp, frame; | struct sigframe *fp, frame; | ||||
struct sigacts *psp; | struct sigacts *psp; | ||||
struct sysentvec *sysent; | struct sysentvec *sysent; | ||||
int code, onstack, sig; | int onstack, sig; | ||||
td = curthread; | td = curthread; | ||||
p = td->td_proc; | p = td->td_proc; | ||||
PROC_LOCK_ASSERT(p, MA_OWNED); | PROC_LOCK_ASSERT(p, MA_OWNED); | ||||
sig = ksi->ksi_signo; | sig = ksi->ksi_signo; | ||||
code = ksi->ksi_code; | |||||
psp = p->p_sigacts; | psp = p->p_sigacts; | ||||
mtx_assert(&psp->ps_mtx, MA_OWNED); | mtx_assert(&psp->ps_mtx, MA_OWNED); | ||||
tf = td->td_frame; | tf = td->td_frame; | ||||
onstack = sigonstack(tf->tf_sp); | onstack = sigonstack(tf->tf_sp); | ||||
CTR4(KTR_SIG, "sendsig: td=%p (%s) catcher=%p sig=%d", td, p->p_comm, | CTR4(KTR_SIG, "sendsig: td=%p (%s) catcher=%p sig=%d", td, p->p_comm, | ||||
catcher, sig); | catcher, sig); | ||||
▲ Show 20 Lines • Show All 587 Lines • Show Last 20 Lines |