1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM wqlockup 4 #define TRACE_INCLUDE_PATH trace/hooks 5 6 #if !defined(_TRACE_HOOK_WQLOCKUP_H) || defined(TRACE_HEADER_MULTI_READ) 7 #define _TRACE_HOOK_WQLOCKUP_H 8 #include <trace/hooks/vendor_hooks.h> 9 /* 10 * Following tracepoints are not exported in tracefs and provide a 11 * mechanism for vendor modules to hook and extend functionality 12 */ 13 DECLARE_RESTRICTED_HOOK(android_rvh_alloc_workqueue, 14 TP_PROTO(struct workqueue_struct *wq, unsigned int *flags, int *max_active), 15 TP_ARGS(wq, flags, max_active), 1); 16 17 DECLARE_RESTRICTED_HOOK(android_rvh_create_worker, 18 TP_PROTO(struct task_struct *p, struct workqueue_attrs *attrs), 19 TP_ARGS(p, attrs), 1); 20 21 DECLARE_HOOK(android_vh_wq_lockup_pool, 22 TP_PROTO(int cpu, unsigned long pool_ts), 23 TP_ARGS(cpu, pool_ts)); 24 25 DECLARE_RESTRICTED_HOOK(android_rvh_alloc_and_link_pwqs, 26 TP_PROTO(struct workqueue_struct *wq, int *ret, bool *skip), 27 TP_ARGS(wq, ret, skip), 1); 28 29 #endif /* _TRACE_HOOK_WQLOCKUP_H */ 30 /* This part must be outside protection */ 31 #include <trace/define_trace.h> 32