aboutsummaryrefslogtreecommitdiffstats
path: root/include/trace
diff options
context:
space:
mode:
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>2015-03-24 18:15:57 -0400
committerSteven Rostedt <rostedt@goodmis.org>2015-04-08 09:39:58 -0400
commit23b9766261aa9bd4cc9ba770deda794608708bdc (patch)
tree9c55677522d1020c3092e17a55c3dada32cd61d3 /include/trace
parent32eb3d0d09943ab9dcc01fb8d2619b64e965992c (diff)
x86/tlb/trace: Export enums in used by tlb_flush tracepoint
Have the enums used in __print_symbolic() by the trace_tlb_flush() tracepoint exported to userpace such that they can be parsed by userspace tools. Link: http://lkml.kernel.org/r/20150403013802.220157513@goodmis.org Cc: Dave Hansen <dave@sr71.net> Reviewed-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'include/trace')
-rw-r--r--include/trace/events/tlb.h30
1 files changed, 25 insertions, 5 deletions
diff --git a/include/trace/events/tlb.h b/include/trace/events/tlb.h
index 0e7635765153..4250f364a6ca 100644
--- a/include/trace/events/tlb.h
+++ b/include/trace/events/tlb.h
@@ -7,11 +7,31 @@
7#include <linux/mm_types.h> 7#include <linux/mm_types.h>
8#include <linux/tracepoint.h> 8#include <linux/tracepoint.h>
9 9
10#define TLB_FLUSH_REASON \ 10#define TLB_FLUSH_REASON \
11 { TLB_FLUSH_ON_TASK_SWITCH, "flush on task switch" }, \ 11 EM( TLB_FLUSH_ON_TASK_SWITCH, "flush on task switch" ) \
12 { TLB_REMOTE_SHOOTDOWN, "remote shootdown" }, \ 12 EM( TLB_REMOTE_SHOOTDOWN, "remote shootdown" ) \
13 { TLB_LOCAL_SHOOTDOWN, "local shootdown" }, \ 13 EM( TLB_LOCAL_SHOOTDOWN, "local shootdown" ) \
14 { TLB_LOCAL_MM_SHOOTDOWN, "local mm shootdown" } 14 EMe( TLB_LOCAL_MM_SHOOTDOWN, "local mm shootdown" )
15
16/*
17 * First define the enums in TLB_FLUSH_REASON to be exported to userspace
18 * via TRACE_DEFINE_ENUM().
19 */
20#undef EM
21#undef EMe
22#define EM(a,b) TRACE_DEFINE_ENUM(a);
23#define EMe(a,b) TRACE_DEFINE_ENUM(a);
24
25TLB_FLUSH_REASON
26
27/*
28 * Now redefine the EM() and EMe() macros to map the enums to the strings
29 * that will be printed in the output.
30 */
31#undef EM
32#undef EMe
33#define EM(a,b) { a, b },
34#define EMe(a,b) { a, b }
15 35
16TRACE_EVENT_CONDITION(tlb_flush, 36TRACE_EVENT_CONDITION(tlb_flush,
17 37