[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210702172345.Horde.VhYvsDcOcRfOxOFrUo9F1Ge@mail.your-server.de>
Date: Fri, 02 Jul 2021 17:23:45 +0200
From: Matthias Treydte <mt@...dheinz.de>
To: Paolo Abeni <pabeni@...hat.com>
Cc: Willem de Bruijn <willemdebruijn.kernel@...il.com>,
David Ahern <dsahern@...il.com>, stable@...r.kernel.org,
netdev@...r.kernel.org, regressions@...ts.linux.dev,
davem@...emloft.net, yoshfuji@...ux-ipv6.org, dsahern@...nel.org
Subject: Re: [regression] UDP recv data corruption
Quoting Paolo Abeni <pabeni@...hat.com>:
> ---
> diff --git a/net/ipv4/udp_offload.c b/net/ipv4/udp_offload.c
> index 54e06b88af69..458c888337a5 100644
> --- a/net/ipv4/udp_offload.c
> +++ b/net/ipv4/udp_offload.c
> @@ -526,6 +526,8 @@ struct sk_buff *udp_gro_receive(struct list_head
> *head, struct sk_buff *skb,
> if ((!sk && (skb->dev->features & NETIF_F_GRO_UDP_FWD)) ||
> (sk && udp_sk(sk)->gro_enabled) ||
> NAPI_GRO_CB(skb)->is_flist)
> pp =
> call_gro_receive(udp_gro_receive_segment, head, skb);
> + else
> + goto out;
> return pp;
> }
Impressive! This patch, applied to 5.13, fixes the problem. What I
like even more is that it again confirms my suspicion that an "if"
without an "else" is always a code smell. :-)
With this and the reproducer in my previous mail, is there still value
in doing the "perf" stuff?
Thanks,
-Matthias
Powered by blists - more mailing lists