1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM notifier 4 5 #if !defined(_TRACE_NOTIFIERS_H) || defined(TRACE_HEADER_MULTI_READ) 6 #define _TRACE_NOTIFIERS_H 7 8 #include <linux/tracepoint.h> 9 10 DECLARE_EVENT_CLASS(notifier_info, 11 12 TP_PROTO(void *cb), 13 14 TP_ARGS(cb), 15 16 TP_STRUCT__entry( 17 __field(void *, cb) 18 ), 19 20 TP_fast_assign( 21 __entry->cb = cb; 22 ), 23 24 TP_printk("%ps", __entry->cb) 25 ); 26 27 /* 28 * notifier_register - called upon notifier callback registration 29 * 30 * @cb: callback pointer 31 * 32 */ 33 DEFINE_EVENT(notifier_info, notifier_register, 34 35 TP_PROTO(void *cb), 36 37 TP_ARGS(cb) 38 ); 39 40 /* 41 * notifier_unregister - called upon notifier callback unregistration 42 * 43 * @cb: callback pointer 44 * 45 */ 46 DEFINE_EVENT(notifier_info, notifier_unregister, 47 48 TP_PROTO(void *cb), 49 50 TP_ARGS(cb) 51 ); 52 53 /* 54 * notifier_run - called upon notifier callback execution 55 * 56 * @cb: callback pointer 57 * 58 */ 59 DEFINE_EVENT(notifier_info, notifier_run, 60 61 TP_PROTO(void *cb), 62 63 TP_ARGS(cb) 64 ); 65 66 #endif /* _TRACE_NOTIFIERS_H */ 67 68 /* This part must be outside protection */ 69 #include <trace/define_trace.h> 70