1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM futex 4 #undef TRACE_INCLUDE_PATH 5 #define TRACE_INCLUDE_PATH trace/hooks 6 #if !defined(_TRACE_HOOK_FUTEX_H) || defined(TRACE_HEADER_MULTI_READ) 7 #define _TRACE_HOOK_FUTEX_H 8 #include <linux/tracepoint.h> 9 #include <trace/hooks/vendor_hooks.h> 10 #include <linux/plist.h> 11 /* 12 * Following tracepoints are not exported in tracefs and provide a 13 * mechanism for vendor modules to hook and extend functionality 14 */ 15 #if defined(CONFIG_TRACEPOINTS) && defined(CONFIG_ANDROID_VENDOR_HOOKS) 16 DECLARE_HOOK(android_vh_alter_futex_plist_add, 17 TP_PROTO(struct plist_node *node, 18 struct plist_head *head, 19 bool *already_on_hb), 20 TP_ARGS(node, head, already_on_hb)); 21 #else 22 #define trace_android_vh_alter_futex_plist_add(node, head, already_on_hb) 23 #endif 24 #endif /* _TRACE_HOOK_FUTEX_H */ 25 /* This part must be outside protection */ 26 #include <trace/define_trace.h> 27