[Devel] [PATCH RH9 00/47] Annotate skb free sites with reason

Nikolay Borisov nikolay.borisov at virtuozzo.com
Tue Jan 3 18:38:56 MSK 2023


This series backports most of the patches that add a reason to skb free sites.
Each individual patch has been compile-tested so I don't expect any breakage.

David Ahern (1):
  ipv6: Add reasons for skb drops to __udp6_lib_rcv

Dongli Zhang (2):
  net: tap: track dropped skb via kfree_skb_reason()
  net: tun: track dropped skb via kfree_skb_reason()

Eric Dumazet (5):
  tcp: add drop reason support to tcp_validate_incoming()
  tcp: add drop reasons to tcp_rcv_state_process()
  tcp: add two drop reasons for tcp_ack()
  tcp: add drop reason support to tcp_prune_ofo_queue()
  tcp: add drop reason support to tcp_ofo_queue()

Jakub Kicinski (1):
  skb: make drop reason booleanable

Menglong Dong (38):
  net: netfilter: use kfree_drop_reason() for NF_DROP
  net: ipv4: use kfree_skb_reason() in ip_rcv_core()
  net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core()
  net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu()
  net: socket: rename SKB_DROP_REASON_SOCKET_FILTER
  net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb()
  net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb()
  net: tcp: introduce tcp_drop_reason()
  net: tcp: add skb drop reasons to tcp_v4_rcv()
  net: tcp: use kfree_skb_reason() for tcp_v6_rcv()
  net: tcp: add skb drop reasons to tcp_v{4,6}_inbound_md5_hash()
  net: tcp: add skb drop reasons to tcp_add_backlog()
  net: tcp: use kfree_skb_reason() for tcp_v{4,6}_do_rcv()
  net: tcp: use tcp_drop_reason() for tcp_rcv_established()
  net: tcp: use tcp_drop_reason() for tcp_data_queue()
  net: tcp: use tcp_drop_reason() for tcp_data_queue_ofo()
  net: ip: add skb drop reasons for ip egress path
  net: neigh: use kfree_skb_reason() for __neigh_event_send()
  net: neigh: add skb drop reasons to arp_error_report()
  net: dev: use kfree_skb_reason() for sch_handle_egress()
  net: skb: introduce the function kfree_skb_list_reason()
  net: dev: add skb drop reasons to __dev_xmit_skb()
  net: dev: use kfree_skb_reason() for enqueue_to_backlog()
  net: dev: use kfree_skb_reason() for do_xdp_generic()
  net: dev: use kfree_skb_reason() for sch_handle_ingress()
  net: dev: use kfree_skb_reason() for __netif_receive_skb_core()
  net: sock: introduce sock_queue_rcv_skb_reason()
  net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT
  net: icmp: add skb drop reasons to icmp protocol
  skb: add some helpers for skb drop reasons
  net: ipv4: add skb drop reasons to ip_error()
  net: ip: add skb drop reasons to ip forwarding
  net: icmp: introduce function icmpv6_param_prob_reason()
  net: ipv6: add skb drop reasons to TLV parse
  net: ipv6: add skb drop reasons to ip6_rcv_core()
  net: dm: check the boundary of skb drop reasons
  net: skb: check the boundrary of drop reason in kfree_skb_reason()
  net: skb: change the definition SKB_DR_SET()

 drivers/net/tap.c          |  35 +++++---
 drivers/net/tun.c          |  38 ++++++--
 include/linux/icmpv6.h     |  11 ++-
 include/linux/skbuff.h     | 172 ++++++++++++++++++++++++++++++++++++-
 include/net/ping.h         |   2 +-
 include/net/sock.h         |   9 +-
 include/net/tcp.h          |   3 +-
 include/trace/events/skb.h |  66 +++++++++++++-
 net/core/dev.c             |  18 ++--
 net/core/drop_monitor.c    |   2 +-
 net/core/neighbour.c       |   6 +-
 net/core/skbuff.c          |   9 +-
 net/core/sock.c            |  30 +++++--
 net/ipv4/arp.c             |   2 +-
 net/ipv4/icmp.c            |  74 +++++++++-------
 net/ipv4/ip_forward.c      |  13 ++-
 net/ipv4/ip_input.c        |  31 +++++--
 net/ipv4/ip_output.c       |   8 +-
 net/ipv4/ping.c            |  14 +--
 net/ipv4/route.c           |   6 +-
 net/ipv4/tcp_input.c       |  82 +++++++++++++-----
 net/ipv4/tcp_ipv4.c        |  34 ++++++--
 net/ipv4/udp.c             |  22 +++--
 net/ipv6/exthdrs.c         |  31 ++++---
 net/ipv6/icmp.c            |  30 ++++---
 net/ipv6/ip6_input.c       |  24 ++++--
 net/ipv6/ip6_output.c      |  15 ++--
 net/ipv6/tcp_ipv6.c        |  37 ++++++--
 net/ipv6/udp.c             |  11 ++-
 net/netfilter/core.c       |   2 +-
 30 files changed, 651 insertions(+), 186 deletions(-)

--
2.34.1



More information about the Devel mailing list