1 /* SPDX-License-Identifier: GPL-2.0 */ 1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM initcall 3 #define TRACE_SYSTEM initcall 4 4 5 #if !defined(_TRACE_INITCALL_H) || defined(TRA 5 #if !defined(_TRACE_INITCALL_H) || defined(TRACE_HEADER_MULTI_READ) 6 #define _TRACE_INITCALL_H 6 #define _TRACE_INITCALL_H 7 7 8 #include <linux/tracepoint.h> 8 #include <linux/tracepoint.h> 9 9 10 TRACE_EVENT(initcall_level, 10 TRACE_EVENT(initcall_level, 11 11 12 TP_PROTO(const char *level), 12 TP_PROTO(const char *level), 13 13 14 TP_ARGS(level), 14 TP_ARGS(level), 15 15 16 TP_STRUCT__entry( 16 TP_STRUCT__entry( 17 __string(level, level) 17 __string(level, level) 18 ), 18 ), 19 19 20 TP_fast_assign( 20 TP_fast_assign( 21 __assign_str(level); 21 __assign_str(level); 22 ), 22 ), 23 23 24 TP_printk("level=%s", __get_str(level) 24 TP_printk("level=%s", __get_str(level)) 25 ); 25 ); 26 26 27 TRACE_EVENT(initcall_start, 27 TRACE_EVENT(initcall_start, 28 28 29 TP_PROTO(initcall_t func), 29 TP_PROTO(initcall_t func), 30 30 31 TP_ARGS(func), 31 TP_ARGS(func), 32 32 33 TP_STRUCT__entry( 33 TP_STRUCT__entry( 34 /* 34 /* 35 * Use field_struct to avoid i 35 * Use field_struct to avoid is_signed_type() 36 * comparison of a function po 36 * comparison of a function pointer 37 */ 37 */ 38 __field_struct(initcall_t, fun 38 __field_struct(initcall_t, func) 39 ), 39 ), 40 40 41 TP_fast_assign( 41 TP_fast_assign( 42 __entry->func = func; 42 __entry->func = func; 43 ), 43 ), 44 44 45 TP_printk("func=%pS", __entry->func) 45 TP_printk("func=%pS", __entry->func) 46 ); 46 ); 47 47 48 TRACE_EVENT(initcall_finish, 48 TRACE_EVENT(initcall_finish, 49 49 50 TP_PROTO(initcall_t func, int ret), 50 TP_PROTO(initcall_t func, int ret), 51 51 52 TP_ARGS(func, ret), 52 TP_ARGS(func, ret), 53 53 54 TP_STRUCT__entry( 54 TP_STRUCT__entry( 55 /* 55 /* 56 * Use field_struct to avoid i 56 * Use field_struct to avoid is_signed_type() 57 * comparison of a function po 57 * comparison of a function pointer 58 */ 58 */ 59 __field_struct(initcall_t, 59 __field_struct(initcall_t, func) 60 __field(int, 60 __field(int, ret) 61 ), 61 ), 62 62 63 TP_fast_assign( 63 TP_fast_assign( 64 __entry->func = func; 64 __entry->func = func; 65 __entry->ret = ret; 65 __entry->ret = ret; 66 ), 66 ), 67 67 68 TP_printk("func=%pS ret=%d", __entry-> 68 TP_printk("func=%pS ret=%d", __entry->func, __entry->ret) 69 ); 69 ); 70 70 71 #endif /* if !defined(_TRACE_GPIO_H) || define 71 #endif /* if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ) */ 72 72 73 /* This part must be outside protection */ 73 /* This part must be outside protection */ 74 #include <trace/define_trace.h> 74 #include <trace/define_trace.h> 75 75
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.