Loading include/trace/events/skb.h +22 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,28 @@ TRACE_EVENT(consume_skb, TP_printk("skbaddr=%p", __entry->skbaddr) ); TRACE_EVENT(print_skb_gso, TP_PROTO(struct sk_buff *skb), TP_ARGS(skb), TP_STRUCT__entry( __field(void *, skbaddr) __field(int, len) __field(int, data_len) ), TP_fast_assign( __entry->skbaddr = skb; __entry->len = skb->len; __entry->data_len = skb->data_len; ), TP_printk("GSO: skbaddr=%p, len=%d, data_len=%d", __entry->skbaddr, __entry->len, __entry->data_len) ); TRACE_EVENT(skb_copy_datagram_iovec, TP_PROTO(const struct sk_buff *skb, int len), Loading net/core/dev.c +1 −0 Original line number Diff line number Diff line Loading @@ -3305,6 +3305,7 @@ static struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device if (netif_needs_gso(skb, features)) { struct sk_buff *segs; trace_print_skb_gso(skb); segs = skb_gso_segment(skb, features); if (IS_ERR(segs)) { goto out_kfree_skb; Loading Loading
include/trace/events/skb.h +22 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,28 @@ TRACE_EVENT(consume_skb, TP_printk("skbaddr=%p", __entry->skbaddr) ); TRACE_EVENT(print_skb_gso, TP_PROTO(struct sk_buff *skb), TP_ARGS(skb), TP_STRUCT__entry( __field(void *, skbaddr) __field(int, len) __field(int, data_len) ), TP_fast_assign( __entry->skbaddr = skb; __entry->len = skb->len; __entry->data_len = skb->data_len; ), TP_printk("GSO: skbaddr=%p, len=%d, data_len=%d", __entry->skbaddr, __entry->len, __entry->data_len) ); TRACE_EVENT(skb_copy_datagram_iovec, TP_PROTO(const struct sk_buff *skb, int len), Loading
net/core/dev.c +1 −0 Original line number Diff line number Diff line Loading @@ -3305,6 +3305,7 @@ static struct sk_buff *validate_xmit_skb(struct sk_buff *skb, struct net_device if (netif_needs_gso(skb, features)) { struct sk_buff *segs; trace_print_skb_gso(skb); segs = skb_gso_segment(skb, features); if (IS_ERR(segs)) { goto out_kfree_skb; Loading