public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/3] net: use kfree_skb_reason() for ip/neighbour
@ 2022-02-25  7:17 menglong8.dong
  2022-02-25  7:17 ` [PATCH net-next v2 1/3] net: ip: add skb drop reasons for ip egress path menglong8.dong
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: menglong8.dong @ 2022-02-25  7:17 UTC (permalink / raw)
  To: dsahern
  Cc: rostedt, mingo, davem, kuba, yoshfuji, imagedong, edumazet,
	alobakin, cong.wang, paulb, talalahmad, keescook,
	ilias.apalodimas, memxor, flyingpeng, mengensun, daniel,
	yajun.deng, roopa, linux-kernel, netdev

From: Menglong Dong <imagedong@tencent.com>

In the series "net: use kfree_skb_reason() for ip/udp packet receive",
reasons for skb drops are added to the packet receive process of IP
layer. Link:

https://lore.kernel.org/netdev/20220205074739.543606-1-imagedong@tencent.com/

And in the first patch of this series, skb drop reasons are added to
the packet egress path of IP layer. As kfree_skb() is not used frequent,
I commit these changes at once and didn't create a patch for every
functions that involed. Following functions are handled:

__ip_queue_xmit()
ip_finish_output()
ip_mc_finish_output()
ip6_output()
ip6_finish_output()
ip6_finish_output2()

Following new drop reasons are introduced (what they mean can be seen
in the document of them):

SKB_DROP_REASON_IP_OUTNOROUTES
SKB_DROP_REASON_BPF_CGROUP_EGRESS
SKB_DROP_REASON_IPV6DSIABLED
SKB_DROP_REASON_NEIGH_CREATEFAIL

In the 2th and 3th patches, kfree_skb_reason() is used in neighbour
subsystem instead of kfree_skb(). __neigh_event_send() and
arp_error_report() are involed, and following new drop reasons are
introduced:

SKB_DROP_REASON_NEIGH_FAILED
SKB_DROP_REASON_NEIGH_QUEUEFULL
SKB_DROP_REASON_NEIGH_DEAD

Changes since v1:
- introduce SKB_DROP_REASON_NEIGH_CREATEFAIL for some path in the 1th
  patch
- introduce SKB_DROP_REASON_NEIGH_DEAD in the 2th patch
- simplify the document for the new drop reasons, as David Ahern
  suggested

Menglong Dong (3):
  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()

 include/linux/skbuff.h     | 14 ++++++++++++++
 include/trace/events/skb.h |  7 +++++++
 net/core/neighbour.c       |  6 +++---
 net/ipv4/arp.c             |  2 +-
 net/ipv4/ip_output.c       |  8 ++++----
 net/ipv6/ip6_output.c      |  6 +++---
 6 files changed, 32 insertions(+), 11 deletions(-)

-- 
2.35.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-02-25 15:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-25  7:17 [PATCH net-next v2 0/3] net: use kfree_skb_reason() for ip/neighbour menglong8.dong
2022-02-25  7:17 ` [PATCH net-next v2 1/3] net: ip: add skb drop reasons for ip egress path menglong8.dong
2022-02-25 15:42   ` David Ahern
2022-02-25  7:17 ` [PATCH net-next v2 2/3] net: neigh: use kfree_skb_reason() for __neigh_event_send() menglong8.dong
2022-02-25 15:39   ` David Ahern
2022-02-25  7:17 ` [PATCH net-next v2 3/3] net: neigh: add skb drop reasons to arp_error_report() menglong8.dong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox