summaryrefslogtreecommitdiffstats
path: root/include/trace/events/rcu.h
diff options
context:
space:
mode:
authorPaul E. McKenney <paul.mckenney@linaro.org>2011-06-21 01:14:54 -0700
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2011-09-28 21:38:15 -0700
commit72fe701b70e6ced35d734b676c13efbc8fc769a9 (patch)
tree87bece8406b18e27409a33355c384c9f759915ae /include/trace/events/rcu.h
parente99033c5c160f1f247c665923a66acec693a967c (diff)
rcu: Add RCU type to callback-invocation tracing
Add a string to the rcu_batch_start() and rcu_batch_end() trace messages that indicates the RCU type ("rcu_sched", "rcu_bh", or "rcu_preempt"). The trace messages for the actual invocations themselves are not marked, as it should be clear from the rcu_batch_start() and rcu_batch_end() events before and after. Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Diffstat (limited to 'include/trace/events/rcu.h')
-rw-r--r--include/trace/events/rcu.h28
1 files changed, 18 insertions, 10 deletions
diff --git a/include/trace/events/rcu.h b/include/trace/events/rcu.h
index ab458eb689f..508824e5a77 100644
--- a/include/trace/events/rcu.h
+++ b/include/trace/events/rcu.h
@@ -33,27 +33,31 @@ TRACE_EVENT(rcu_utilization,
/*
* Tracepoint for marking the beginning rcu_do_batch, performed to start
- * RCU callback invocation. The first argument is the total number of
- * callbacks (including those that are not yet ready to be invoked),
- * and the second argument is the current RCU-callback batch limit.
+ * RCU callback invocation. The first argument is the RCU flavor,
+ * the second is the total number of callbacks (including those that
+ * are not yet ready to be invoked), and the third argument is the
+ * current RCU-callback batch limit.
*/
TRACE_EVENT(rcu_batch_start,
- TP_PROTO(long qlen, int blimit),
+ TP_PROTO(char *rcuname, long qlen, int blimit),
- TP_ARGS(qlen, blimit),
+ TP_ARGS(rcuname, qlen, blimit),
TP_STRUCT__entry(
+ __field(char *, rcuname)
__field(long, qlen)
__field(int, blimit)
),
TP_fast_assign(
+ __entry->rcuname = rcuname;
__entry->qlen = qlen;
__entry->blimit = blimit;
),
- TP_printk("CBs=%ld bl=%d", __entry->qlen, __entry->blimit)
+ TP_printk("%s CBs=%ld bl=%d",
+ __entry->rcuname, __entry->qlen, __entry->blimit)
);
/*
@@ -106,23 +110,27 @@ TRACE_EVENT(rcu_invoke_kfree_callback,
/*
* Tracepoint for exiting rcu_do_batch after RCU callbacks have been
- * invoked. The first argument is the number of callbacks actually invoked.
+ * invoked. The first argument is the name of the RCU flavor and
+ * the second argument is number of callbacks actually invoked.
*/
TRACE_EVENT(rcu_batch_end,
- TP_PROTO(int callbacks_invoked),
+ TP_PROTO(char *rcuname, int callbacks_invoked),
- TP_ARGS(callbacks_invoked),
+ TP_ARGS(rcuname, callbacks_invoked),
TP_STRUCT__entry(
+ __field(char *, rcuname)
__field(int, callbacks_invoked)
),
TP_fast_assign(
+ __entry->rcuname = rcuname;
__entry->callbacks_invoked = callbacks_invoked;
),
- TP_printk("CBs-invoked=%d", __entry->callbacks_invoked)
+ TP_printk("%s CBs-invoked=%d",
+ __entry->rcuname, __entry->callbacks_invoked)
);
#endif /* _TRACE_RCU_H */