net: display more skb fields in skb_dump()
authorEric Dumazet <edumazet@google.com>
Sun, 7 Apr 2024 08:06:06 +0000 (08:06 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Apr 2024 13:06:31 +0000 (14:06 +0100)
Print these additional fields in skb_dump() to ease debugging.

- mac_len
- csum_start (in v2, at Willem suggestion)
- csum_offset (in v2, at Willem suggestion)
- priority
- mark
- alloc_cpu
- vlan_all
- encapsulation
- inner_protocol
- inner_mac_header
- inner_network_header
- inner_transport_header

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/skbuff.c

index 2a5ce6667bbb9bb70e89d47abda5daca5d16aae2..21cd01641f4c047c9a7ff2924b686b5a42535f81 100644 (file)
@@ -1304,22 +1304,28 @@ void skb_dump(const char *level, const struct sk_buff *skb, bool full_pkt)
        has_trans = skb_transport_header_was_set(skb);
 
        printk("%sskb len=%u headroom=%u headlen=%u tailroom=%u\n"
-              "mac=(%d,%d) net=(%d,%d) trans=%d\n"
+              "mac=(%d,%d) mac_len=%u net=(%d,%d) trans=%d\n"
               "shinfo(txflags=%u nr_frags=%u gso(size=%hu type=%u segs=%hu))\n"
-              "csum(0x%x ip_summed=%u complete_sw=%u valid=%u level=%u)\n"
-              "hash(0x%x sw=%u l4=%u) proto=0x%04x pkttype=%u iif=%d\n",
+              "csum(0x%x start=%u offset=%u ip_summed=%u complete_sw=%u valid=%u level=%u)\n"
+              "hash(0x%x sw=%u l4=%u) proto=0x%04x pkttype=%u iif=%d\n"
+              "priority=0x%x mark=0x%x alloc_cpu=%u vlan_all=0x%x\n"
+              "encapsulation=%d inner(proto=0x%04x, mac=%u, net=%u, trans=%u)\n",
               level, skb->len, headroom, skb_headlen(skb), tailroom,
               has_mac ? skb->mac_header : -1,
               has_mac ? skb_mac_header_len(skb) : -1,
+              skb->mac_len,
               skb->network_header,
               has_trans ? skb_network_header_len(skb) : -1,
               has_trans ? skb->transport_header : -1,
               sh->tx_flags, sh->nr_frags,
               sh->gso_size, sh->gso_type, sh->gso_segs,
-              skb->csum, skb->ip_summed, skb->csum_complete_sw,
-              skb->csum_valid, skb->csum_level,
+              skb->csum, skb->csum_start, skb->csum_offset, skb->ip_summed,
+              skb->csum_complete_sw, skb->csum_valid, skb->csum_level,
               skb->hash, skb->sw_hash, skb->l4_hash,
-              ntohs(skb->protocol), skb->pkt_type, skb->skb_iif);
+              ntohs(skb->protocol), skb->pkt_type, skb->skb_iif,
+              skb->priority, skb->mark, skb->alloc_cpu, skb->vlan_all,
+              skb->encapsulation, skb->inner_protocol, skb->inner_mac_header,
+              skb->inner_network_header, skb->inner_transport_header);
 
        if (dev)
                printk("%sdev name=%s feat=%pNF\n",