1 /* SPDX-License-Identifier: GPL-2.0 */ 2 3 #undef TRACE_SYSTEM 4 #define TRACE_SYSTEM net 5 #define TRACE_INCLUDE_PATH trace/hooks 6 7 #if !defined(_TRACE_HOOK_NET_VH_H) || defined(TRACE_HEADER_MULTI_READ) 8 #define _TRACE_HOOK_NET_VH_H 9 #include <linux/tracepoint.h> 10 #include <trace/hooks/vendor_hooks.h> 11 12 #if defined(CONFIG_TRACEPOINTS) && defined(CONFIG_ANDROID_VENDOR_HOOKS) 13 struct packet_type; 14 struct list_head; 15 struct sk_buff; 16 struct sock; 17 struct nf_conn; 18 19 DECLARE_HOOK(android_vh_ptype_head, 20 TP_PROTO(const struct packet_type *pt, struct list_head *vendor_pt), 21 TP_ARGS(pt, vendor_pt)); 22 DECLARE_HOOK(android_vh_kfree_skb, 23 TP_PROTO(struct sk_buff *skb), TP_ARGS(skb)); 24 DECLARE_RESTRICTED_HOOK(android_rvh_sk_alloc, 25 TP_PROTO(struct sock *sock), TP_ARGS(sock), 1); 26 DECLARE_RESTRICTED_HOOK(android_rvh_sk_free, 27 TP_PROTO(struct sock *sock), TP_ARGS(sock), 1); 28 DECLARE_RESTRICTED_HOOK(android_rvh_nf_conn_alloc, 29 TP_PROTO(struct nf_conn *nf_conn), TP_ARGS(nf_conn), 1); 30 DECLARE_RESTRICTED_HOOK(android_rvh_nf_conn_free, 31 TP_PROTO(struct nf_conn *nf_conn), TP_ARGS(nf_conn), 1); 32 #else 33 #define trace_android_vh_ptype_head(pt, vendor_pt) 34 #define trace_android_vh_kfree_skb(skb) 35 #define trace_android_rvh_sk_alloc(sock) 36 #define trace_android_rvh_sk_free(sock) 37 #define trace_android_rvh_nf_conn_alloc(nf_conn) 38 #define trace_android_rvh_nf_conn_free(nf_conn) 39 #endif 40 #endif /* _TRACE_HOOK_NET_VH_H */ 41 /* This part must be outside protection */ 42 #include <trace/define_trace.h> 43