Add a generic facility for sockets to be freed afer an RCU grace period. Then UDP is changed to no longer use SLAB_DESTROY_BY_RCU, in order to speedup rx processing for traffic encapsulated in UDP.
I prepared a patch to convert TCP listeners to this infrastructure, but will post it later, since Tom was mostly interested in UDP. Eric Dumazet (2): net: add SOCK_RCU_FREE socket flag udp: No longer use SLAB_DESTROY_BY_RCU include/linux/udp.h | 8 +- include/net/sock.h | 14 +-- include/net/udp.h | 2 +- net/core/sock.c | 14 ++- net/ipv4/udp.c | 290 +++++++++++++++------------------------------------- net/ipv4/udp_diag.c | 18 ++-- net/ipv6/udp.c | 194 +++++++++++------------------------ 7 files changed, 177 insertions(+), 363 deletions(-) -- 2.8.0.rc3.226.g39d4020