X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=instrumentation%2Fevents%2Flttng-module%2Fsignal.h;h=810dcbeadf20db00861c6110ea3ca87019311987;hb=369708f464bedc0682151df9308cebfa14dbdb2b;hp=68045ce6fb3a2b8e1d96079caf7daabf542ae2aa;hpb=9f36eaed6f91d5897924b551b44d1edd8cee00e2;p=lttng-modules.git diff --git a/instrumentation/events/lttng-module/signal.h b/instrumentation/events/lttng-module/signal.h index 68045ce6..810dcbea 100644 --- a/instrumentation/events/lttng-module/signal.h +++ b/instrumentation/events/lttng-module/signal.h @@ -1,4 +1,4 @@ -/* SPDX-License-Identifier: GPL-2.0 */ +/* SPDX-License-Identifier: GPL-2.0-only */ #undef TRACE_SYSTEM #define TRACE_SYSTEM signal @@ -6,7 +6,6 @@ #define LTTNG_TRACE_SIGNAL_H #include -#include #ifndef _TRACE_SIGNAL_DEF #define _TRACE_SIGNAL_DEF @@ -15,11 +14,11 @@ #undef LTTNG_FIELDS_SIGINFO #define LTTNG_FIELDS_SIGINFO(info) \ ctf_integer(int, errno, \ - (info == SEND_SIG_NOINFO || info == SEND_SIG_FORCED || info == SEND_SIG_PRIV) ? \ + (info == SEND_SIG_NOINFO || info == SEND_SIG_PRIV) ? \ 0 : \ info->si_errno) \ ctf_integer(int, code, \ - (info == SEND_SIG_NOINFO || info == SEND_SIG_FORCED) ? \ + (info == SEND_SIG_NOINFO) ? \ SI_USER : \ ((info == SEND_SIG_PRIV) ? SI_KERNEL : info->si_code)) #endif /* _TRACE_SIGNAL_DEF */ @@ -36,24 +35,9 @@ * SEND_SIG_NOINFO means that si_code is SI_USER, and SEND_SIG_PRIV * means that si_code is SI_KERNEL. */ -#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)) LTTNG_TRACEPOINT_EVENT(signal_generate, - TP_PROTO(int sig, struct siginfo *info, struct task_struct *task), - - TP_ARGS(sig, info, task), - - TP_FIELDS( - ctf_integer(int, sig, sig) - LTTNG_FIELDS_SIGINFO(info) - ctf_array_text(char, comm, task->comm, TASK_COMM_LEN) - ctf_integer(pid_t, pid, task->pid) - ) -) -#else -LTTNG_TRACEPOINT_EVENT(signal_generate, - - TP_PROTO(int sig, struct siginfo *info, struct task_struct *task, + TP_PROTO(int sig, struct kernel_siginfo *info, struct task_struct *task, int group, int result), TP_ARGS(sig, info, task, group, result), @@ -67,7 +51,6 @@ LTTNG_TRACEPOINT_EVENT(signal_generate, ctf_integer(int, result, result) ) ) -#endif /** * signal_deliver - called when a signal is delivered @@ -85,7 +68,7 @@ LTTNG_TRACEPOINT_EVENT(signal_generate, */ LTTNG_TRACEPOINT_EVENT(signal_deliver, - TP_PROTO(int sig, struct siginfo *info, struct k_sigaction *ka), + TP_PROTO(int sig, struct kernel_siginfo *info, struct k_sigaction *ka), TP_ARGS(sig, info, ka), @@ -97,57 +80,6 @@ LTTNG_TRACEPOINT_EVENT(signal_deliver, ) ) -#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)) -LTTNG_TRACEPOINT_EVENT_CLASS(signal_queue_overflow, - - TP_PROTO(int sig, int group, struct siginfo *info), - - TP_ARGS(sig, group, info), - - TP_FIELDS( - ctf_integer(int, sig, sig) - ctf_integer(int, group, group) - LTTNG_FIELDS_SIGINFO(info) - ) -) - -/** - * signal_overflow_fail - called when signal queue is overflow - * @sig: signal number - * @group: signal to process group or not (bool) - * @info: pointer to struct siginfo - * - * Kernel fails to generate 'sig' signal with 'info' siginfo, because - * siginfo queue is overflow, and the signal is dropped. - * 'group' is not 0 if the signal will be sent to a process group. - * 'sig' is always one of RT signals. - */ -LTTNG_TRACEPOINT_EVENT_INSTANCE(signal_queue_overflow, signal_overflow_fail, - - TP_PROTO(int sig, int group, struct siginfo *info), - - TP_ARGS(sig, group, info) -) - -/** - * signal_lose_info - called when siginfo is lost - * @sig: signal number - * @group: signal to process group or not (bool) - * @info: pointer to struct siginfo - * - * Kernel generates 'sig' signal but loses 'info' siginfo, because siginfo - * queue is overflow. - * 'group' is not 0 if the signal will be sent to a process group. - * 'sig' is always one of non-RT signals. - */ -LTTNG_TRACEPOINT_EVENT_INSTANCE(signal_queue_overflow, signal_lose_info, - - TP_PROTO(int sig, int group, struct siginfo *info), - - TP_ARGS(sig, group, info) -) -#endif - #endif /* LTTNG_TRACE_SIGNAL_H */ /* This part must be outside protection */