1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | #undef TRACE_SYSTEM |
3 | #define TRACE_SYSTEM rseq |
4 | |
5 | #if !defined(_TRACE_RSEQ_H) || defined(TRACE_HEADER_MULTI_READ) |
6 | #define _TRACE_RSEQ_H |
7 | |
8 | #include <linux/tracepoint.h> |
9 | #include <linux/types.h> |
10 | |
11 | TRACE_EVENT(rseq_update, |
12 | |
13 | TP_PROTO(struct task_struct *t), |
14 | |
15 | TP_ARGS(t), |
16 | |
17 | TP_STRUCT__entry( |
18 | __field(s32, cpu_id) |
19 | __field(s32, node_id) |
20 | __field(s32, mm_cid) |
21 | ), |
22 | |
23 | TP_fast_assign( |
24 | __entry->cpu_id = raw_smp_processor_id(); |
25 | __entry->node_id = cpu_to_node(__entry->cpu_id); |
26 | __entry->mm_cid = task_mm_cid(t); |
27 | ), |
28 | |
29 | TP_printk("cpu_id=%d node_id=%d mm_cid=%d" , __entry->cpu_id, |
30 | __entry->node_id, __entry->mm_cid) |
31 | ); |
32 | |
33 | TRACE_EVENT(rseq_ip_fixup, |
34 | |
35 | TP_PROTO(unsigned long regs_ip, unsigned long start_ip, |
36 | unsigned long post_commit_offset, unsigned long abort_ip), |
37 | |
38 | TP_ARGS(regs_ip, start_ip, post_commit_offset, abort_ip), |
39 | |
40 | TP_STRUCT__entry( |
41 | __field(unsigned long, regs_ip) |
42 | __field(unsigned long, start_ip) |
43 | __field(unsigned long, post_commit_offset) |
44 | __field(unsigned long, abort_ip) |
45 | ), |
46 | |
47 | TP_fast_assign( |
48 | __entry->regs_ip = regs_ip; |
49 | __entry->start_ip = start_ip; |
50 | __entry->post_commit_offset = post_commit_offset; |
51 | __entry->abort_ip = abort_ip; |
52 | ), |
53 | |
54 | TP_printk("regs_ip=0x%lx start_ip=0x%lx post_commit_offset=%lu abort_ip=0x%lx" , |
55 | __entry->regs_ip, __entry->start_ip, |
56 | __entry->post_commit_offset, __entry->abort_ip) |
57 | ); |
58 | |
59 | #endif /* _TRACE_SOCK_H */ |
60 | |
61 | /* This part must be outside protection */ |
62 | #include <trace/define_trace.h> |
63 | |