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:Matthias Treydte <mt@waldheinz.de> Fixes: 18f25dc3 ("udp: skip L4 aggregation for UDP tunnel packets") Signed-off-by:
Paolo Abeni <pabeni@redhat.com> Signed-off-by:
David S. Miller <davem@davemloft.net> Conflicts: net/ipv4/udp_offload.c Signed-off-by:
Zhengchao Shao <shaozhengchao@huawei.com>
Loading
Please sign in to comment