Cleanup: Move headers from probes/ to include/lttng/
[lttng-modules.git] / instrumentation / events / lttng-module / napi.h
index 26b10ba1b99db10f22623cd0c3a028a7c02c4d0d..8a32993f5e6afa5272039498136021e811d71c83 100644 (file)
@@ -1,38 +1,51 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
 #undef TRACE_SYSTEM
 #define TRACE_SYSTEM napi
 
-#if !defined(_TRACE_NAPI_H_) || defined(TRACE_HEADER_MULTI_READ)
-#define _TRACE_NAPI_H_
+#if !defined(LTTNG_TRACE_NAPI_H) || defined(TRACE_HEADER_MULTI_READ)
+#define LTTNG_TRACE_NAPI_H
 
+#include <lttng/tracepoint-event.h>
 #include <linux/netdevice.h>
-#include <linux/tracepoint.h>
 #include <linux/ftrace.h>
 
 #define NO_DEV "(no_device)"
 
-TRACE_EVENT(napi_poll,
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0))
 
-       TP_PROTO(struct napi_struct *napi),
+LTTNG_TRACEPOINT_EVENT(napi_poll,
 
-       TP_ARGS(napi),
+       TP_PROTO(struct napi_struct *napi, int work, int budget),
+
+       TP_ARGS(napi, work, budget),
+
+       TP_FIELDS(
+               ctf_integer_hex(struct napi_struct *, napi, napi)
+               ctf_string(dev_name, napi->dev ? napi->dev->name : NO_DEV)
+               ctf_integer(int, work, work)
+               ctf_integer(int, budget, budget)
+       )
+)
 
-       TP_STRUCT__entry(
-               __field(        struct napi_struct *,   napi)
-               __string(       dev_name, napi->dev ? napi->dev->name : NO_DEV)
-       ),
+#else
 
-       TP_fast_assign(
-               tp_assign(napi, napi)
-               tp_strcpy(dev_name, napi->dev ? napi->dev->name : NO_DEV)
-       ),
+LTTNG_TRACEPOINT_EVENT(napi_poll,
 
-       TP_printk("napi poll on napi struct %p for device %s",
-               __entry->napi, __get_str(dev_name))
+       TP_PROTO(struct napi_struct *napi),
+
+       TP_ARGS(napi),
+
+       TP_FIELDS(
+               ctf_integer_hex(struct napi_struct *, napi, napi)
+               ctf_string(dev_name, napi->dev ? napi->dev->name : NO_DEV)
+       )
 )
 
+#endif
+
 #undef NO_DEV
 
-#endif /* _TRACE_NAPI_H_ */
+#endif /* LTTNG_TRACE_NAPI_H */
 
 /* This part must be outside protection */
-#include "../../../probes/define_trace.h"
+#include <lttng/define_trace.h>
This page took 0.02351 seconds and 4 git commands to generate.