From: Eric Dumazet <eric.duma...@gmail.com> Date: Fri, 01 Apr 2016 11:49:03 -0700
> For example, TCP stack tracks per socket ID generation, even if it > sends DF=1 frames. Damn useful for tcpdump analysis and drop > inference. Thanks for mentioning this, I never considered this use case. > With your change, the resulting GRO packet would propagate the ID of > first frag. Most GSO/GSO engines will then provide a ID sequence, > which might not match original packets. > > I do not particularly care, but it is worth mentioning that GRO+TSO > would not be idempotent anymore. Our eventual plan was to start emitting zero in the ID field for outgoing TCP datagrams with DF set, since the issue that caused us to generate incrementing IDs in the first place (buggy Microsoft SLHC compression) we decided is not relevant and important enough to accommodate any more. So outside of your TCP behavior analysis case, there isn't a compelling argument to keeping that code around any more, rather than just put zero in the ID field. I suppose we could keep the counter code around and allow it to be enabled using a sysctl or socket option, but how strongly do you really feel about this?