| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- /* SPDX-License-Identifier: GPL-2.0 */
- #undef TRACE_SYSTEM
- #define TRACE_SYSTEM csd
- #if !defined(_TRACE_CSD_H) || defined(TRACE_HEADER_MULTI_READ)
- #define _TRACE_CSD_H
- #include <linux/tracepoint.h>
- TRACE_EVENT(csd_queue_cpu,
- TP_PROTO(const unsigned int cpu,
- unsigned long callsite,
- smp_call_func_t func,
- call_single_data_t *csd),
- TP_ARGS(cpu, callsite, func, csd),
- TP_STRUCT__entry(
- __field(unsigned int, cpu)
- __field(void *, callsite)
- __field(void *, func)
- __field(void *, csd)
- ),
- TP_fast_assign(
- __entry->cpu = cpu;
- __entry->callsite = (void *)callsite;
- __entry->func = func;
- __entry->csd = csd;
- ),
- TP_printk("cpu=%u callsite=%pS func=%ps csd=%p",
- __entry->cpu, __entry->callsite, __entry->func, __entry->csd)
- );
- /*
- * Tracepoints for a function which is called as an effect of smp_call_function.*
- */
- DECLARE_EVENT_CLASS(csd_function,
- TP_PROTO(smp_call_func_t func, call_single_data_t *csd),
- TP_ARGS(func, csd),
- TP_STRUCT__entry(
- __field(void *, func)
- __field(void *, csd)
- ),
- TP_fast_assign(
- __entry->func = func;
- __entry->csd = csd;
- ),
- TP_printk("func=%ps, csd=%p", __entry->func, __entry->csd)
- );
- DEFINE_EVENT(csd_function, csd_function_entry,
- TP_PROTO(smp_call_func_t func, call_single_data_t *csd),
- TP_ARGS(func, csd)
- );
- DEFINE_EVENT(csd_function, csd_function_exit,
- TP_PROTO(smp_call_func_t func, call_single_data_t *csd),
- TP_ARGS(func, csd)
- );
- #endif /* _TRACE_CSD_H */
- /* This part must be outside protection */
- #include <trace/define_trace.h>
|