aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/tracehook.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/tracehook.h')
-rw-r--r--include/linux/tracehook.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/include/linux/tracehook.h b/include/linux/tracehook.h
index 3548694a24db..42a0d7b11959 100644
--- a/include/linux/tracehook.h
+++ b/include/linux/tracehook.h
@@ -422,4 +422,33 @@ static inline int tracehook_consider_fatal_signal(struct task_struct *task,
422 return (task_ptrace(task) & PT_PTRACED) != 0; 422 return (task_ptrace(task) & PT_PTRACED) != 0;
423} 423}
424 424
425/**
426 * tracehook_get_signal - deliver synthetic signal to traced task
427 * @task: @current
428 * @regs: task_pt_regs(@current)
429 * @info: details of synthetic signal
430 * @return_ka: sigaction for synthetic signal
431 *
432 * Return zero to check for a real pending signal normally.
433 * Return -1 after releasing the siglock to repeat the check.
434 * Return a signal number to induce an artifical signal delivery,
435 * setting *@info and *@return_ka to specify its details and behavior.
436 *
437 * The @return_ka->sa_handler value controls the disposition of the
438 * signal, no matter the signal number. For %SIG_DFL, the return value
439 * is a representative signal to indicate the behavior (e.g. %SIGTERM
440 * for death, %SIGQUIT for core dump, %SIGSTOP for job control stop,
441 * %SIGTSTP for stop unless in an orphaned pgrp), but the signal number
442 * reported will be @info->si_signo instead.
443 *
444 * Called with @task->sighand->siglock held, before dequeuing pending signals.
445 */
446static inline int tracehook_get_signal(struct task_struct *task,
447 struct pt_regs *regs,
448 siginfo_t *info,
449 struct k_sigaction *return_ka)
450{
451 return 0;
452}
453
425#endif /* <linux/tracehook.h> */ 454#endif /* <linux/tracehook.h> */