Richard Gobert wrote: > Willem de Bruijn wrote: > > In v3 we discussed how the flush on network layer differences (like > > TTL or ToS) currently only affect the TCP GRO path, but should apply > > more broadly. > > > > We agreed that it is fine to leave that to a separate patch series. > > > > But seeing this patch, it introduces a lot of churn, but also makes > > it harder to address that issue for UDP, as it now moves network > > layer checks directly to the TCP code. > Currently the logic of flush_id is scattered in tcp_gro_receive and > {inet,ipv6}_gro_receive with conditionals rewriting ->flush and ->flush_id, > so IMO the code should be more concise when it's in one place - in addition > to not doing checks against non relevant packets. > > With this patch, the fix will probably be simple, most likely just calling > gro_network_flush from skb_gro_receive or from the relevant flow in > udp_gro_receive_segment. Since this bug fix should be simple and it being > not relevant to the optimization, I'd like to solve it in another series > and properly test that new flow. Do you agree? My main concern is moving this code to tcp_offload.c, if it likely soon will be moved elsewhere again.