From: Subash Abhinov Kasiviswanathan <subas...@codeaurora.org> Date: Thu, 23 Mar 2017 13:34:16 -0600
> Certain system process significant unconnected UDP workload. > It would be preferrable to disable UDP early demux for those systems > and enable it for TCP only. > > By disabling UDP demux, we see these slight gains on an ARM64 system- > 782 -> 788Mbps unconnected single stream UDPv4 > 633 -> 654Mbps unconnected UDPv4 different sources > > The performance impact can change based on CPU architecure and cache > sizes. There will not much difference seen if entire UDP hash table > is in cache. > > Both sysctls are enabled by default to preserve existing behavior. > > v1->v2: Change function pointer instead of adding conditional as > suggested by Stephen. > > v2->v3: Read once in callers to avoid issues due to compiler > optimizations. Also update commit message with the tests. > > v3->v4: Store and use read once result instead of querying pointer > again incorrectly. > > v4->v5: Refactor to avoid errors due to compilation with IPV6={m,n} > > Signed-off-by: Subash Abhinov Kasiviswanathan <subas...@codeaurora.org> > Suggested-by: Eric Dumazet <eduma...@google.com> Applied.