On Wed, Nov 11, 2020 at 3:45 PM Alexander Lobakin <aloba...@pm.me> wrote: > > udp{4,6}_lib_lookup_skb() use ip{,v6}_hdr() to get IP header of the > packet. While it's probably OK for non-frag0 paths, this helpers > will also point to junk on Fast/frag0 GRO when all headers are > located in frags. As a result, sk/skb lookup may fail or give wrong > results. To support both GRO modes, skb_gro_network_header() might > be used. To not modify original functions, add private versions of > udp{4,6}_lib_lookup_skb() only to perform correct sk lookups on GRO. > > Present since the introduction of "application-level" UDP GRO > in 4.7-rc1. > > Misc: replace totally unneeded ternaries with plain ifs. > > Fixes: a6024562ffd7 ("udp: Add GRO functions to UDP socket") > Suggested-by: Willem de Bruijn <will...@google.com> > Cc: Eric Dumazet <eduma...@google.com> > Cc: Jakub Kicinski <k...@kernel.org> > Signed-off-by: Alexander Lobakin <aloba...@pm.me>
Acked-by: Willem de Bruijn <will...@google.com>