Re: [PATCH net-next v5 04/14] ip_tunnel: add drop reasons to the generic RX path

From: Ido Schimmel

Date: Sun Oct 04 2026 - 12:07:28 EST


On Wed, Sep 30, 2026 at 09:39:00PM +0300, Anton Danilov wrote:
> diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c
> index 0875474a578a..6d500751f837 100644
> --- a/net/ipv4/ip_tunnel.c
> +++ b/net/ipv4/ip_tunnel.c
> @@ -384,6 +384,7 @@ int ip_tunnel_rcv(struct ip_tunnel *tunnel, struct sk_buff *skb,
> const struct tnl_ptk_info *tpi, struct metadata_dst *tun_dst,
> bool log_ecn_error)
> {
> + enum skb_drop_reason reason = SKB_DROP_REASON_NOT_SPECIFIED;
> const struct iphdr *iph = ip_hdr(skb);
> int nh, err;
>

[...]

> @@ -455,9 +466,10 @@ int ip_tunnel_rcv(struct ip_tunnel *tunnel, struct sk_buff *skb,
> return 0;
>
> drop:
> + reason = reason ?: SKB_DROP_REASON_NOT_SPECIFIED;

Why is this needed? Looks like dead code. It also masks the debug check
in __sk_skb_reason_drop(). Better to remove it from this patch and from
other patches if they introduce the same pattern.

> if (tun_dst)
> dst_release((struct dst_entry *)tun_dst);
> - kfree_skb(skb);
> + kfree_skb_reason(skb, reason);
> return 0;
> }
> EXPORT_SYMBOL_GPL(ip_tunnel_rcv);
> --
> 2.47.3
>