mbox series

[v4,net-next,0/7] net: use kfree_skb_reason() for ip/udp packet receive

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

Message

Menglong Dong Feb. 5, 2022, 7:47 a.m. UTC
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

Comments

patchwork-bot+netdevbpf@kernel.org Feb. 7, 2022, 11:40 a.m. UTC | #1
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!