net: tracepoint napi:napi_poll add work and budget

An important information for the napi_poll tracepoint is knowing
the work done (packets processed) by the napi_poll() call. Add
both the work done and budget, as they are related.

Handle trace_napi_poll() param change in dropwatch/drop_monitor
and in python perf script netdev-times.py in backward compat way,
as python fortunately supports optional parameter handling.

Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Jesper Dangaard Brouer
2016-07-07 18:01:32 +02:00
committed by David S. Miller
parent 89141e1c61
commit 1db19db7f5
5 changed files with 21 additions and 12 deletions

View File

@@ -12,22 +12,27 @@
TRACE_EVENT(napi_poll,
TP_PROTO(struct napi_struct *napi),
TP_PROTO(struct napi_struct *napi, int work, int budget),
TP_ARGS(napi),
TP_ARGS(napi, work, budget),
TP_STRUCT__entry(
__field( struct napi_struct *, napi)
__field( int, work)
__field( int, budget)
__string( dev_name, napi->dev ? napi->dev->name : NO_DEV)
),
TP_fast_assign(
__entry->napi = napi;
__entry->work = work;
__entry->budget = budget;
__assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV);
),
TP_printk("napi poll on napi struct %p for device %s",
__entry->napi, __get_str(dev_name))
TP_printk("napi poll on napi struct %p for device %s work %d budget %d",
__entry->napi, __get_str(dev_name),
__entry->work, __entry->budget)
);
#undef NO_DEV