70 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#undef TRACE_SYSTEM3#define TRACE_SYSTEM notifier4 5#if !defined(_TRACE_NOTIFIERS_H) || defined(TRACE_HEADER_MULTI_READ)6#define _TRACE_NOTIFIERS_H7 8#include <linux/tracepoint.h>9 10DECLARE_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 registration29 *30 * @cb: callback pointer31 *32 */33DEFINE_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 unregistration42 *43 * @cb: callback pointer44 *45 */46DEFINE_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 execution55 *56 * @cb: callback pointer57 *58 */59DEFINE_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