Recent addition of per TCP socket rx/tx cache brought regressions for some workloads, as reported by Feng Tang.
It seems better to make them opt-in, before we adopt better heuristics. The last patch adds high_order_alloc_disable sysctl to ask TCP sendmsg() to exclusively use order-0 allocations, as mm layer has specific optimizations. Eric Dumazet (4): sysctl: define proc_do_static_key() tcp: add tcp_rx_skb_cache sysctl tcp: add tcp_tx_skb_cache sysctl net: add high_order_alloc_disable sysctl/static key Documentation/networking/ip-sysctl.txt | 8 +++++ include/linux/bpf.h | 1 - include/linux/sysctl.h | 3 ++ include/net/sock.h | 12 ++++--- kernel/bpf/core.c | 1 - kernel/sysctl.c | 44 ++++++++++++++------------ net/core/sock.c | 4 ++- net/core/sysctl_net_core.c | 7 ++++ net/ipv4/sysctl_net_ipv4.c | 17 ++++++++++ 9 files changed, 68 insertions(+), 29 deletions(-) -- 2.22.0.410.gd8fdbe21b5-goog