Message ID | 20220205074739.543606-1-imagedong@tencent.com (mailing list archive) |
---|---|
Headers | show |
Series | net: use kfree_skb_reason() for ip/udp packet receive | expand |
Hello: This series was applied to netdev/net-next.git (master) by David S. Miller <davem@davemloft.net>: On Sat, 5 Feb 2022 15:47:32 +0800 you wrote: > From: Menglong Dong <imagedong@tencent.com> > > In this series patches, kfree_skb() is replaced with kfree_skb_reason() > during ipv4 and udp4 packet receiving path, and following drop reasons > are introduced: > > SKB_DROP_REASON_SOCKET_FILTER > SKB_DROP_REASON_NETFILTER_DROP > SKB_DROP_REASON_OTHERHOST > SKB_DROP_REASON_IP_CSUM > SKB_DROP_REASON_IP_INHDR > SKB_DROP_REASON_IP_RPFILTER > SKB_DROP_REASON_UNICAST_IN_L2_MULTICAST > SKB_DROP_REASON_XFRM_POLICY > SKB_DROP_REASON_IP_NOPROTO > SKB_DROP_REASON_SOCKET_RCVBUFF > SKB_DROP_REASON_PROTO_MEM > > [...] Here is the summary with links: - [v4,net-next,1/7] net: skb_drop_reason: add document for drop reasons https://git.kernel.org/netdev/net-next/c/88590b369354 - [v4,net-next,2/7] net: netfilter: use kfree_drop_reason() for NF_DROP https://git.kernel.org/netdev/net-next/c/2df3041ba3be - [v4,net-next,3/7] net: ipv4: use kfree_skb_reason() in ip_rcv_core() https://git.kernel.org/netdev/net-next/c/33cba42985c8 - [v4,net-next,4/7] net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core() https://git.kernel.org/netdev/net-next/c/c1f166d1f7ee - [v4,net-next,5/7] net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu() https://git.kernel.org/netdev/net-next/c/10580c479190 - [v4,net-next,6/7] net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb() https://git.kernel.org/netdev/net-next/c/1379a92d38e3 - [v4,net-next,7/7] net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb() https://git.kernel.org/netdev/net-next/c/08d4c0370c40 You are awesome, thank you!
From: Menglong Dong <imagedong@tencent.com> In this series patches, kfree_skb() is replaced with kfree_skb_reason() during ipv4 and udp4 packet receiving path, and following drop reasons are introduced: SKB_DROP_REASON_SOCKET_FILTER SKB_DROP_REASON_NETFILTER_DROP SKB_DROP_REASON_OTHERHOST SKB_DROP_REASON_IP_CSUM SKB_DROP_REASON_IP_INHDR SKB_DROP_REASON_IP_RPFILTER SKB_DROP_REASON_UNICAST_IN_L2_MULTICAST SKB_DROP_REASON_XFRM_POLICY SKB_DROP_REASON_IP_NOPROTO SKB_DROP_REASON_SOCKET_RCVBUFF SKB_DROP_REASON_PROTO_MEM TCP is more complex, so I left it in the next series. I just figure out how __print_symbolic() works. It doesn't base on the array index, but searching for symbols by loop. So I'm a little afraid it's performance. Changes since v3: - fix some small problems in the third patch (net: ipv4: use kfree_skb_reason() in ip_rcv_core()), as David Ahern said Changes since v2: - use SKB_DROP_REASON_PKT_TOO_SMALL for a path in ip_rcv_core() Changes since v1: - add document for all drop reasons, as David advised - remove unreleated cleanup - remove EARLY_DEMUX and IP_ROUTE_INPUT drop reason - replace {UDP, TCP}_FILTER with SOCKET_FILTER Alex Elder (6): net: ipa: allocate transaction in replenish loop net: ipa: don't use replenish_backlog net: ipa: introduce gsi_channel_trans_idle() net: ipa: kill replenish_backlog net: ipa: replenish after delivering payload net: ipa: determine replenish doorbell differently Menglong Dong (1): net: drop_monitor: support drop reason