summaryrefslogtreecommitdiff
path: root/include/trace/events/context_tracking.h
blob: ce8007cf29cf41a104b1864152502178536264c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#undef TRACE_SYSTEM
#define TRACE_SYSTEM context_tracking

#if !defined(_TRACE_CONTEXT_TRACKING_H) || defined(TRACE_HEADER_MULTI_READ)
#define _TRACE_CONTEXT_TRACKING_H

#include <linux/tracepoint.h>

DECLARE_EVENT_CLASS(context_tracking_user,

	TP_PROTO(int dummy),

	TP_ARGS(dummy),

	TP_STRUCT__entry(
		__field( int,	dummy	)
	),

	TP_fast_assign(
		__entry->dummy		= dummy;
	),

	TP_printk("%s", "")
);

/**
 * user_enter - called when the kernel resumes to userspace
 * @dummy:	dummy arg to make trace event macro happy
 *
 * This event occurs when the kernel resumes to userspace  after
 * an exception or a syscall.
 */
DEFINE_EVENT(context_tracking_user, user_enter,

	TP_PROTO(int dummy),

	TP_ARGS(dummy)
);

/**
 * user_exit - called when userspace enters the kernel
 * @dummy:	dummy arg to make trace event macro happy
 *
 * This event occurs when userspace enters the kernel through
 * an exception or a syscall.
 */
DEFINE_EVENT(context_tracking_user, user_exit,

	TP_PROTO(int dummy),

	TP_ARGS(dummy)
);


#endif /*  _TRACE_CONTEXT_TRACKING_H */

/* This part must be outside protection */
#include <trace/define_trace.h>
racer was established. The code that initialized the affinity was only called on the initial instantiation of the tracer. After that, it was not initialized, and the previous affinity did not match the current newly created one, making it appear that the user modified the thread's affinity when it did not, and the thread failed to migrate again. Cc: stable@vger.kernel.org Fixes: 0330f7aa8ee6 ("tracing: Have hwlat trace migrate across tracing_cpumask CPUs") Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'tools/testing/selftests/sync/sync_wait.c')