1// SPDX-License-Identifier: GPL-2.0 2#undef TRACE_SYSTEM 3#define TRACE_SYSTEM benchmark 4 5#if !defined(_TRACE_BENCHMARK_H) || defined(TRACE_HEADER_MULTI_READ) 6#define _TRACE_BENCHMARK_H 7 8#include <linux/tracepoint.h> 9 10extern int trace_benchmark_reg(void); 11extern void trace_benchmark_unreg(void); 12 13#define BENCHMARK_EVENT_STRLEN 128 14 15TRACE_EVENT_FN(benchmark_event, 16 17 TP_PROTO(const char *str, u64 delta), 18 19 TP_ARGS(str, delta), 20 21 TP_STRUCT__entry( 22 __array( char, str, BENCHMARK_EVENT_STRLEN ) 23 __field( u64, delta) 24 ), 25 26 TP_fast_assign( 27 memcpy(__entry->str, str, BENCHMARK_EVENT_STRLEN); 28 __entry->delta = delta; 29 ), 30 31 TP_printk("%s delta=%llu", __entry->str, __entry->delta), 32 33 trace_benchmark_reg, trace_benchmark_unreg 34); 35 36#endif /* _TRACE_BENCHMARK_H */ 37 38#undef TRACE_INCLUDE_FILE 39#undef TRACE_INCLUDE_PATH 40#define TRACE_INCLUDE_PATH . 41#define TRACE_INCLUDE_FILE trace_benchmark 42 43/* This part must be outside protection */ 44#include <trace/define_trace.h> 45