Name

tracehook_get_signal — deliver synthetic signal to traced task

Synopsis

int tracehook_get_signal (struct task_struct * task,
 struct pt_regs * regs,
 siginfo_t * info,
 struct k_sigaction * return_ka);
 

Arguments

task

current

regs

task_pt_regs(current)

info

details of synthetic signal

return_ka

sigaction for synthetic signal

Description

Return zero to check for a real pending signal normally. Return -1 after releasing the siglock to repeat the check. Return a signal number to induce an artifical signal delivery, setting *info and *return_ka to specify its details and behavior.

The return_ka->sa_handler value controls the disposition of the signal, no matter the signal number. For SIG_DFL, the return value is a representative signal to indicate the behavior (e.g. SIGTERM for death, SIGQUIT for core dump, SIGSTOP for job control stop, SIGTSTP for stop unless in an orphaned pgrp), but the signal number reported will be info->si_signo instead.

Called with task->sighand->siglock held, before dequeuing pending signals.