trace_benchmark.h 871 B

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