75 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#undef TRACE_SYSTEM3#define TRACE_SYSTEM initcall4 5#if !defined(_TRACE_INITCALL_H) || defined(TRACE_HEADER_MULTI_READ)6#define _TRACE_INITCALL_H7 8#include <linux/tracepoint.h>9 10TRACE_EVENT(initcall_level,11 12 TP_PROTO(const char *level),13 14 TP_ARGS(level),15 16 TP_STRUCT__entry(17 __string(level, level)18 ),19 20 TP_fast_assign(21 __assign_str(level);22 ),23 24 TP_printk("level=%s", __get_str(level))25);26 27TRACE_EVENT(initcall_start,28 29 TP_PROTO(initcall_t func),30 31 TP_ARGS(func),32 33 TP_STRUCT__entry(34 /*35 * Use field_struct to avoid is_signed_type()36 * comparison of a function pointer37 */38 __field_struct(initcall_t, func)39 ),40 41 TP_fast_assign(42 __entry->func = func;43 ),44 45 TP_printk("func=%pS", __entry->func)46);47 48TRACE_EVENT(initcall_finish,49 50 TP_PROTO(initcall_t func, int ret),51 52 TP_ARGS(func, ret),53 54 TP_STRUCT__entry(55 /*56 * Use field_struct to avoid is_signed_type()57 * comparison of a function pointer58 */59 __field_struct(initcall_t, func)60 __field(int, ret)61 ),62 63 TP_fast_assign(64 __entry->func = func;65 __entry->ret = ret;66 ),67 68 TP_printk("func=%pS ret=%d", __entry->func, __entry->ret)69);70 71#endif /* if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ) */72 73/* This part must be outside protection */74#include <trace/define_trace.h>75