-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
tracing, net, skb tracepoint: make skb tracepoint use the TRACE_EVENT…
…() macro TRACE_EVENT is a more generic way to define a tracepoint. Doing so adds these new capabilities to this tracepoint: - zero-copy and per-cpu splice() tracing - binary tracing without printf overhead - structured logging records exposed under /debug/tracing/events - trace events embedded in function tracer output and other plugins - user-defined, per tracepoint filter expressions Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com> Acked-by: Neil Horman <nhorman@tuxdriver.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: "Steven Rostedt ;" <rostedt@goodmis.org> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Tom Zanussi <tzanussi@gmail.com> LKML-Reference: <49DD90D2.5020604@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
- Loading branch information
Zhaolei
authored and
Ingo Molnar
committed
Apr 10, 2009
1 parent
e71e99c
commit 5cb3d1d
Showing
4 changed files
with
41 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
|
||
/* use <trace/skb.h> instead */ | ||
#ifndef TRACE_EVENT | ||
# error Do not include this file directly. | ||
# error Unless you know what you are doing. | ||
#endif | ||
|
||
#undef TRACE_SYSTEM | ||
#define TRACE_SYSTEM skb | ||
|
||
/* | ||
* Tracepoint for free an sk_buff: | ||
*/ | ||
TRACE_EVENT(kfree_skb, | ||
|
||
TP_PROTO(struct sk_buff *skb, void *location), | ||
|
||
TP_ARGS(skb, location), | ||
|
||
TP_STRUCT__entry( | ||
__field( void *, skbaddr ) | ||
__field( unsigned short, protocol ) | ||
__field( void *, location ) | ||
), | ||
|
||
TP_fast_assign( | ||
__entry->skbaddr = skb; | ||
if (skb) { | ||
__entry->protocol = ntohs(skb->protocol); | ||
} | ||
__entry->location = location; | ||
), | ||
|
||
TP_printk("skbaddr=%p protocol=%u location=%p", | ||
__entry->skbaddr, __entry->protocol, __entry->location) | ||
); | ||
|
||
#undef TRACE_SYSTEM |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,3 +3,4 @@ | |
#include <trace/sched.h> | ||
#include <trace/irq.h> | ||
#include <trace/lockdep.h> | ||
#include <trace/skb.h> |