[PATCH net-next 0/2] net: skb: introduce kfree_skb_with_reason()

From: menglong8 . dong
Date: Wed Dec 29 2021 - 09:32:26 EST


From: Menglong Dong <imagedong@xxxxxxxxxxx>

In this series patch, the interface kfree_skb_with_reason() is
introduced(), which is used to collect skb drop reason, and pass
it to 'kfree_skb' tracepoint. Therefor, 'drop_monitor' or eBPF is
able to monitor abnormal skb with detail reason.

In fact, this series patches are out of the intelligence of David
and Steve, I'm just a truck man :/

Previous discussion is here:

https://lore.kernel.org/netdev/20211118105752.1d46e990@xxxxxxxxxxxxxxxxxx/
https://lore.kernel.org/netdev/67b36bd8-2477-88ac-83a0-35a1eeaf40c9@xxxxxxxxx/

In the first patch, kfree_skb_with_reason() is introduced and
the 'reason' field is added to 'kfree_skb' tracepoint. In the
second patch, 'kfree_skb()' in replaced with 'kfree_skb_with_reason()'
in tcp_v4_rcv().


Menglong Dong (2):
net: skb: introduce kfree_skb_with_reason()
net: skb: use kfree_skb_with_reason() in tcp_v4_rcv()

include/linux/skbuff.h | 16 ++++++++++++++++
include/trace/events/skb.h | 39 +++++++++++++++++++++++++++++++-------
net/core/dev.c | 3 ++-
net/core/drop_monitor.c | 10 +++++++---
net/core/skbuff.c | 22 ++++++++++++++++++++-
net/ipv4/tcp_ipv4.c | 10 ++++++++--
6 files changed, 86 insertions(+), 14 deletions(-)

--
2.27.0