Commit be18bb1f authored by Paolo Abeni's avatar Paolo Abeni Committed by Zhengchao Shao
Browse files

udp: properly flush normal packet at GRO time

mainline inclusion
from mainline-v5.14-rc2
commit b43c8909
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I94JZ0
CVE: CVE-2021-47036

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b43c8909be52f2baca8884f967b418a88424494a



--------------------------------

If an UDP packet enters the GRO engine but is not eligible
for aggregation and is not targeting an UDP tunnel,
udp_gro_receive() will not set the flush bit, and packet
could delayed till the next napi flush.

Fix the issue ensuring non GROed packets traverse
skb_gro_flush_final().

Reported-and-tested-by: default avatarMatthias Treydte <mt@waldheinz.de>
Fixes: 18f25dc3 ("udp: skip L4 aggregation for UDP tunnel packets")
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>

Conflicts:
	net/ipv4/udp_offload.c

Signed-off-by: default avatarZhengchao Shao <shaozhengchao@huawei.com>
parent c8dc8d3a
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment