Fix: hander negative get_syscall_nr return value
[lttng-modules.git] / instrumentation / syscalls / headers / syscalls_unknown.h
CommitLineData
63728b02
MD
1#if !defined(_TRACE_SYSCALLS_UNKNOWN_H) || defined(TRACE_HEADER_MULTI_READ)
2#define _TRACE_SYSCALLS_UNKNOWN_H
3
3bc29f0a 4#include "../../../probes/lttng-tracepoint-event.h"
63728b02
MD
5#include <linux/syscalls.h>
6
7#define UNKNOWN_SYSCALL_NRARGS 6
8
5b7ac358
MD
9#undef TP_PROBE_CB
10#define TP_PROBE_CB(_template) &syscall_entry_probe
11
d4291869 12LTTNG_TRACEPOINT_EVENT(syscall_entry_unknown,
74f7b56a 13 TP_PROTO(int id, unsigned long *args),
63728b02
MD
14 TP_ARGS(id, args),
15 TP_STRUCT__entry(
74f7b56a 16 __field(int, id)
63728b02
MD
17 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
18 ),
19 TP_fast_assign(
20 tp_assign(id, id)
21 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
22 ),
23 TP_printk()
24)
d4291869 25LTTNG_TRACEPOINT_EVENT(compat_syscall_entry_unknown,
74f7b56a 26 TP_PROTO(int id, unsigned long *args),
b76dc1a0
MD
27 TP_ARGS(id, args),
28 TP_STRUCT__entry(
74f7b56a 29 __field(int, id)
b76dc1a0
MD
30 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
31 ),
32 TP_fast_assign(
33 tp_assign(id, id)
34 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
35 ),
36 TP_printk()
37)
5b7ac358
MD
38
39#undef TP_PROBE_CB
40#define TP_PROBE_CB(_template) &syscall_exit_probe
41
3bc29f0a 42LTTNG_TRACEPOINT_EVENT(syscall_exit_unknown,
74f7b56a 43 TP_PROTO(int id, long ret, unsigned long *args),
5b7ac358 44 TP_ARGS(id, ret, args),
63728b02 45 TP_STRUCT__entry(
74f7b56a 46 __field(int, id)
45913693 47 __field(long, ret)
5b7ac358 48 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
63728b02
MD
49 ),
50 TP_fast_assign(
5b7ac358 51 tp_assign(id, id)
45913693 52 tp_assign(ret, ret)
5b7ac358
MD
53 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
54 ),
55 TP_printk()
56)
3bc29f0a 57LTTNG_TRACEPOINT_EVENT(compat_syscall_exit_unknown,
74f7b56a 58 TP_PROTO(int id, long ret, unsigned long *args),
5b7ac358
MD
59 TP_ARGS(id, ret, args),
60 TP_STRUCT__entry(
74f7b56a 61 __field(int, id)
5b7ac358
MD
62 __field(long, ret)
63 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
64 ),
65 TP_fast_assign(
66 tp_assign(id, id)
67 tp_assign(ret, ret)
68 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
63728b02
MD
69 ),
70 TP_printk()
71)
63728b02
MD
72#endif /* _TRACE_SYSCALLS_UNKNOWN_H */
73
74/* This part must be outside protection */
75#include "../../../probes/define_trace.h"
This page took 0.036193 seconds and 4 git commands to generate.