diff options
author | Jesper Dangaard Brouer <brouer@redhat.com> | 2017-08-15 22:11:03 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-08-17 00:10:10 +0300 |
commit | e543002f77f463501d47fab43acf7ba881e9dcaf (patch) | |
tree | df0bc9e62c8730cca0f90c5c1f1368e849d301d9 /net/core/net-traces.c | |
parent | 7440cccee02a72a2e16f26c7cff674c15f5cd85b (diff) | |
download | linux-e543002f77f463501d47fab43acf7ba881e9dcaf.tar.xz |
qdisc: add tracepoint qdisc:qdisc_dequeue for dequeued SKBs
The main purpose of this tracepoint is to monitor bulk dequeue
in the network qdisc layer, as it cannot be deducted from the
existing qdisc stats.
The txq_state can be used for determining the reason for zero packet
dequeues, see enum netdev_queue_state_t.
Notice all packets doesn't necessary activate this tracepoint. As
qdiscs with flag TCQ_F_CAN_BYPASS, can directly invoke
sch_direct_xmit() when qdisc_qlen is zero.
Remember that perf record supports filters like:
perf record -e qdisc:qdisc_dequeue \
--filter 'ifindex == 4 && (packets > 1 || txq_state > 0)'
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/net-traces.c')
-rw-r--r-- | net/core/net-traces.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/net-traces.c b/net/core/net-traces.c index 92da5e4ceb4f..4f1468ccd056 100644 --- a/net/core/net-traces.c +++ b/net/core/net-traces.c @@ -32,6 +32,7 @@ #include <trace/events/sock.h> #include <trace/events/udp.h> #include <trace/events/fib.h> +#include <trace/events/qdisc.h> #if IS_ENABLED(CONFIG_IPV6) #include <trace/events/fib6.h> EXPORT_TRACEPOINT_SYMBOL_GPL(fib6_table_lookup); |