[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211230093240.1125937-1-imagedong@tencent.com>
Date: Thu, 30 Dec 2021 17:32:37 +0800
From: menglong8.dong@...il.com
To: rostedt@...dmis.org, dsahern@...nel.org
Cc: mingo@...hat.com, davem@...emloft.net, kuba@...nel.org,
nhorman@...driver.com, edumazet@...gle.com,
yoshfuji@...ux-ipv6.org, jonathan.lemon@...il.com, alobakin@...me,
keescook@...omium.org, pabeni@...hat.com, talalahmad@...gle.com,
haokexin@...il.com, imagedong@...cent.com, atenart@...nel.org,
bigeasy@...utronix.de, weiwan@...gle.com, arnd@...db.de,
vvs@...tuozzo.com, cong.wang@...edance.com,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
mengensun@...cent.com, mungerjiang@...cent.com
Subject: [PATCH v2 net-next 0/3] net: skb: introduce kfree_skb_with_reason() and use it for tcp and udp
From: Menglong Dong <imagedong@...cent.com>
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@gandalf.local.home/
https://lore.kernel.org/netdev/67b36bd8-2477-88ac-83a0-35a1eeaf40c9@gmail.com/
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(). In the third patch, 'kfree_skb_with_reason()' is
used in __udp4_lib_rcv().
Changes since v1:
- rename some drop reason, as David suggested
- add the third patch
Menglong Dong (3):
net: skb: introduce kfree_skb_with_reason()
net: skb: use kfree_skb_with_reason() in tcp_v4_rcv()
net: skb: use kfree_skb_with_reason() in __udp4_lib_rcv()
include/linux/skbuff.h | 18 +++++++++++++++++
include/trace/events/skb.h | 41 +++++++++++++++++++++++++++++++-------
net/core/dev.c | 3 ++-
net/core/drop_monitor.c | 10 +++++++---
net/core/skbuff.c | 22 +++++++++++++++++++-
net/ipv4/tcp_ipv4.c | 14 ++++++++++---
net/ipv4/udp.c | 10 ++++++++--
7 files changed, 101 insertions(+), 17 deletions(-)
--
2.27.0
Powered by blists - more mailing lists