Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) #undef TRACE_SYSTEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) #define TRACE_SYSTEM net
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) #if !defined(_TRACE_NET_H) || defined(TRACE_HEADER_MULTI_READ)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) #define _TRACE_NET_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) #include <linux/skbuff.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) #include <linux/netdevice.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) #include <linux/if_vlan.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) #include <linux/ip.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) #include <linux/tracepoint.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) TRACE_EVENT(net_dev_start_xmit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 	TP_PROTO(const struct sk_buff *skb, const struct net_device *dev),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 	TP_ARGS(skb, dev),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 		__string(	name,			dev->name	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 		__field(	u16,			queue_mapping	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 		__field(	const void *,		skbaddr		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 		__field(	bool,			vlan_tagged	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 		__field(	u16,			vlan_proto	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 		__field(	u16,			vlan_tci	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 		__field(	u16,			protocol	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 		__field(	u8,			ip_summed	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 		__field(	unsigned int,		len		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 		__field(	unsigned int,		data_len	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 		__field(	int,			network_offset	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 		__field(	bool,			transport_offset_valid)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 		__field(	int,			transport_offset)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 		__field(	u8,			tx_flags	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 		__field(	u16,			gso_size	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 		__field(	u16,			gso_segs	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 		__field(	u16,			gso_type	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 		__assign_str(name, dev->name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 		__entry->queue_mapping = skb->queue_mapping;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 		__entry->skbaddr = skb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 		__entry->vlan_tagged = skb_vlan_tag_present(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 		__entry->vlan_proto = ntohs(skb->vlan_proto);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 		__entry->vlan_tci = skb_vlan_tag_get(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 		__entry->protocol = ntohs(skb->protocol);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 		__entry->ip_summed = skb->ip_summed;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 		__entry->len = skb->len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 		__entry->data_len = skb->data_len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 		__entry->network_offset = skb_network_offset(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 		__entry->transport_offset_valid =
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 			skb_transport_header_was_set(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 		__entry->transport_offset = skb_transport_offset(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 		__entry->tx_flags = skb_shinfo(skb)->tx_flags;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 		__entry->gso_size = skb_shinfo(skb)->gso_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 		__entry->gso_segs = skb_shinfo(skb)->gso_segs;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 		__entry->gso_type = skb_shinfo(skb)->gso_type;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	TP_printk("dev=%s queue_mapping=%u skbaddr=%p vlan_tagged=%d vlan_proto=0x%04x vlan_tci=0x%04x protocol=0x%04x ip_summed=%d len=%u data_len=%u network_offset=%d transport_offset_valid=%d transport_offset=%d tx_flags=%d gso_size=%d gso_segs=%d gso_type=%#x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 		  __get_str(name), __entry->queue_mapping, __entry->skbaddr,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 		  __entry->vlan_tagged, __entry->vlan_proto, __entry->vlan_tci,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 		  __entry->protocol, __entry->ip_summed, __entry->len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 		  __entry->data_len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 		  __entry->network_offset, __entry->transport_offset_valid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 		  __entry->transport_offset, __entry->tx_flags,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 		  __entry->gso_size, __entry->gso_segs, __entry->gso_type)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) TRACE_EVENT(net_dev_xmit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 	TP_PROTO(struct sk_buff *skb,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 		 int rc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 		 struct net_device *dev,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 		 unsigned int skb_len),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	TP_ARGS(skb, rc, dev, skb_len),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 		__field(	void *,		skbaddr		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 		__field(	unsigned int,	len		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 		__field(	int,		rc		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 		__string(	name,		dev->name	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 		__entry->skbaddr = skb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 		__entry->len = skb_len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 		__entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 		__assign_str(name, dev->name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	TP_printk("dev=%s skbaddr=%p len=%u rc=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 		__get_str(name), __entry->skbaddr, __entry->len, __entry->rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) TRACE_EVENT(net_dev_xmit_timeout,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 	TP_PROTO(struct net_device *dev,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 		 int queue_index),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 	TP_ARGS(dev, queue_index),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 		__string(	name,		dev->name	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 		__string(	driver,		netdev_drivername(dev))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 		__field(	int,		queue_index	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 		__assign_str(name, dev->name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 		__assign_str(driver, netdev_drivername(dev));
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 		__entry->queue_index = queue_index;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	TP_printk("dev=%s driver=%s queue=%d",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 		__get_str(name), __get_str(driver), __entry->queue_index)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) DECLARE_EVENT_CLASS(net_dev_template,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	TP_PROTO(struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	TP_ARGS(skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 		__field(	void *,		skbaddr		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 		__field(	unsigned int,	len		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 		__string(	name,		skb->dev->name	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 		__entry->skbaddr = skb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 		__entry->len = skb->len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 		__assign_str(name, skb->dev->name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	TP_printk("dev=%s skbaddr=%p len=%u",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 		__get_str(name), __entry->skbaddr, __entry->len)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) DEFINE_EVENT(net_dev_template, net_dev_queue,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	TP_PROTO(struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) DEFINE_EVENT(net_dev_template, netif_receive_skb,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	TP_PROTO(struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) DEFINE_EVENT(net_dev_template, netif_rx,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	TP_PROTO(struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) DECLARE_EVENT_CLASS(net_dev_rx_verbose_template,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 	TP_ARGS(skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 		__string(	name,			skb->dev->name	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 		__field(	unsigned int,		napi_id		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 		__field(	u16,			queue_mapping	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 		__field(	const void *,		skbaddr		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 		__field(	bool,			vlan_tagged	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 		__field(	u16,			vlan_proto	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 		__field(	u16,			vlan_tci	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 		__field(	u16,			protocol	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 		__field(	u8,			ip_summed	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 		__field(	u32,			hash		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 		__field(	bool,			l4_hash		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 		__field(	unsigned int,		len		)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 		__field(	unsigned int,		data_len	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 		__field(	unsigned int,		truesize	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 		__field(	bool,			mac_header_valid)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 		__field(	int,			mac_header	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 		__field(	unsigned char,		nr_frags	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 		__field(	u16,			gso_size	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 		__field(	u16,			gso_type	)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 		__assign_str(name, skb->dev->name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) #ifdef CONFIG_NET_RX_BUSY_POLL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 		__entry->napi_id = skb->napi_id;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 		__entry->napi_id = 0;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 		__entry->queue_mapping = skb->queue_mapping;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 		__entry->skbaddr = skb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 		__entry->vlan_tagged = skb_vlan_tag_present(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 		__entry->vlan_proto = ntohs(skb->vlan_proto);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 		__entry->vlan_tci = skb_vlan_tag_get(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 		__entry->protocol = ntohs(skb->protocol);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 		__entry->ip_summed = skb->ip_summed;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 		__entry->hash = skb->hash;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 		__entry->l4_hash = skb->l4_hash;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 		__entry->len = skb->len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 		__entry->data_len = skb->data_len;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 		__entry->truesize = skb->truesize;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 		__entry->mac_header_valid = skb_mac_header_was_set(skb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 		__entry->mac_header = skb_mac_header(skb) - skb->data;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 		__entry->nr_frags = skb_shinfo(skb)->nr_frags;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 		__entry->gso_size = skb_shinfo(skb)->gso_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 		__entry->gso_type = skb_shinfo(skb)->gso_type;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	TP_printk("dev=%s napi_id=%#x queue_mapping=%u skbaddr=%p vlan_tagged=%d vlan_proto=0x%04x vlan_tci=0x%04x protocol=0x%04x ip_summed=%d hash=0x%08x l4_hash=%d len=%u data_len=%u truesize=%u mac_header_valid=%d mac_header=%d nr_frags=%d gso_size=%d gso_type=%#x",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 		  __get_str(name), __entry->napi_id, __entry->queue_mapping,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 		  __entry->skbaddr, __entry->vlan_tagged, __entry->vlan_proto,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 		  __entry->vlan_tci, __entry->protocol, __entry->ip_summed,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 		  __entry->hash, __entry->l4_hash, __entry->len,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 		  __entry->data_len, __entry->truesize,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 		  __entry->mac_header_valid, __entry->mac_header,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 		  __entry->nr_frags, __entry->gso_size, __entry->gso_type)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) DEFINE_EVENT(net_dev_rx_verbose_template, napi_gro_frags_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) DEFINE_EVENT(net_dev_rx_verbose_template, napi_gro_receive_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) DEFINE_EVENT(net_dev_rx_verbose_template, netif_receive_skb_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) DEFINE_EVENT(net_dev_rx_verbose_template, netif_receive_skb_list_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) DEFINE_EVENT(net_dev_rx_verbose_template, netif_rx_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) DEFINE_EVENT(net_dev_rx_verbose_template, netif_rx_ni_entry,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) 	TP_PROTO(const struct sk_buff *skb),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) 	TP_ARGS(skb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) DECLARE_EVENT_CLASS(net_dev_rx_exit_template,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 	TP_ARGS(ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) 	TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) 		__field(int,	ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) 	TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) 		__entry->ret = ret;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) 	),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) 	TP_printk("ret=%d", __entry->ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) DEFINE_EVENT(net_dev_rx_exit_template, napi_gro_frags_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) DEFINE_EVENT(net_dev_rx_exit_template, napi_gro_receive_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) DEFINE_EVENT(net_dev_rx_exit_template, netif_receive_skb_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) DEFINE_EVENT(net_dev_rx_exit_template, netif_rx_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) DEFINE_EVENT(net_dev_rx_exit_template, netif_rx_ni_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) DEFINE_EVENT(net_dev_rx_exit_template, netif_receive_skb_list_exit,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) 	TP_PROTO(int ret),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) 	TP_ARGS(ret)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) #endif /* _TRACE_NET_H */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) /* This part must be outside protection */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) #include <trace/define_trace.h>