Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
include
trace
events
syscalls.h
Go to the documentation of this file.
1
#undef TRACE_SYSTEM
2
#define TRACE_SYSTEM raw_syscalls
3
#define TRACE_INCLUDE_FILE syscalls
4
5
#if !defined(_TRACE_EVENTS_SYSCALLS_H) || defined(TRACE_HEADER_MULTI_READ)
6
#define _TRACE_EVENTS_SYSCALLS_H
7
8
#include <
linux/tracepoint.h
>
9
10
#include <asm/ptrace.h>
11
#include <asm/syscall.h>
12
13
14
#ifdef CONFIG_HAVE_SYSCALL_TRACEPOINTS
15
16
extern
void
syscall_regfunc(
void
);
17
extern
void
syscall_unregfunc(
void
);
18
19
TRACE_EVENT_FN
(sys_enter,
20
21
TP_PROTO
(
struct
pt_regs
*
regs
,
long
id
),
22
23
TP_ARGS
(regs,
id
),
24
25
TP_STRUCT__entry
(
26
__field
(
long
,
id
)
27
__array
(
unsigned
long
, args, 6 )
28
),
29
30
TP_fast_assign
(
31
__entry
->id =
id
;
32
syscall_get_arguments
(
current
, regs, 0, 6,
__entry
->args);
33
),
34
35
TP_printk
(
"NR %ld (%lx, %lx, %lx, %lx, %lx, %lx)"
,
36
__entry
->id,
37
__entry
->args[0],
__entry
->args[1],
__entry
->args[2],
38
__entry
->args[3],
__entry
->args[4],
__entry
->args[5]),
39
40
syscall_regfunc, syscall_unregfunc
41
);
42
43
TRACE_EVENT_FLAGS
(sys_enter,
TRACE_EVENT_FL_CAP_ANY
)
44
45
TRACE_EVENT_FN
(
sys_exit
,
46
47
TP_PROTO
(
struct
pt_regs
*regs,
long
ret
),
48
49
TP_ARGS
(regs, ret),
50
51
TP_STRUCT__entry
(
52
__field
(
long
,
id
)
53
__field
(
long
, ret )
54
),
55
56
TP_fast_assign
(
57
__entry
->
id
=
syscall_get_nr
(
current
, regs);
58
__entry
->ret = ret;
59
),
60
61
TP_printk
("
NR
%
ld
= %
ld
",
62
__entry
->
id
,
__entry
->ret),
63
64
syscall_regfunc, syscall_unregfunc
65
);
66
67
TRACE_EVENT_FLAGS
(sys_exit,
TRACE_EVENT_FL_CAP_ANY
)
68
69
#endif
/* CONFIG_HAVE_SYSCALL_TRACEPOINTS */
70
71
#endif
/* _TRACE_EVENTS_SYSCALLS_H */
72
73
/* This part must be outside protection */
74
#include <
trace/define_trace.h
>
75
Generated on Thu Jan 10 2013 13:03:38 for Linux Kernel by
1.8.2