System call filtering
[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
4#include <linux/tracepoint.h>
5#include <linux/syscalls.h>
6
7#define UNKNOWN_SYSCALL_NRARGS 6
8
9TRACE_EVENT(sys_unknown,
10 TP_PROTO(unsigned int id, unsigned long *args),
11 TP_ARGS(id, args),
12 TP_STRUCT__entry(
13 __field(unsigned int, id)
14 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
15 ),
16 TP_fast_assign(
17 tp_assign(id, id)
18 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
19 ),
20 TP_printk()
21)
b76dc1a0
MD
22TRACE_EVENT(compat_sys_unknown,
23 TP_PROTO(unsigned int id, unsigned long *args),
24 TP_ARGS(id, args),
25 TP_STRUCT__entry(
26 __field(unsigned int, id)
27 __array(unsigned long, args, UNKNOWN_SYSCALL_NRARGS)
28 ),
29 TP_fast_assign(
30 tp_assign(id, id)
31 tp_memcpy(args, args, UNKNOWN_SYSCALL_NRARGS * sizeof(*args))
32 ),
33 TP_printk()
34)
63728b02
MD
35/*
36 * This is going to hook on sys_exit in the kernel.
37 * We change the name so we don't clash with the sys_exit syscall entry
38 * event.
39 */
40TRACE_EVENT(exit_syscall,
45913693
MD
41 TP_PROTO(struct pt_regs *regs, long ret),
42 TP_ARGS(regs, ret),
63728b02 43 TP_STRUCT__entry(
45913693 44 __field(long, ret)
63728b02
MD
45 ),
46 TP_fast_assign(
45913693 47 tp_assign(ret, ret)
63728b02
MD
48 ),
49 TP_printk()
50)
51
52#endif /* _TRACE_SYSCALLS_UNKNOWN_H */
53
54/* This part must be outside protection */
55#include "../../../probes/define_trace.h"
This page took 0.02706 seconds and 4 git commands to generate.