Branch data Line data Source code
1 : : /* SPDX-License-Identifier: GPL-2.0 */ 2 : : #undef TRACE_SYSTEM 3 : : #define TRACE_SYSTEM napi 4 : : 5 : : #if !defined(_TRACE_NAPI_H) || defined(TRACE_HEADER_MULTI_READ) 6 : : #define _TRACE_NAPI_H 7 : : 8 : : #include <linux/netdevice.h> 9 : : #include <linux/tracepoint.h> 10 : : #include <linux/ftrace.h> 11 : : 12 : : #define NO_DEV "(no_device)" 13 : : 14 : 3 : TRACE_EVENT(napi_poll, 15 : : 16 : : TP_PROTO(struct napi_struct *napi, int work, int budget), 17 : : 18 : : TP_ARGS(napi, work, budget), 19 : : 20 : : TP_STRUCT__entry( 21 : : __field( struct napi_struct *, napi) 22 : : __string( dev_name, napi->dev ? napi->dev->name : NO_DEV) 23 : : __field( int, work) 24 : : __field( int, budget) 25 : : ), 26 : : 27 : : TP_fast_assign( 28 : : __entry->napi = napi; 29 : : __assign_str(dev_name, napi->dev ? napi->dev->name : NO_DEV); 30 : : __entry->work = work; 31 : : __entry->budget = budget; 32 : : ), 33 : : 34 : : TP_printk("napi poll on napi struct %p for device %s work %d budget %d", 35 : : __entry->napi, __get_str(dev_name), 36 : : __entry->work, __entry->budget) 37 : : ); 38 : : 39 : : #undef NO_DEV 40 : : 41 : : #endif /* _TRACE_NAPI_H */ 42 : : 43 : : /* This part must be outside protection */ 44 : : #include <trace/define_trace.h>