[PATCH v5 0/2] tcp/dcpp: Un-pin tw_timer

From: Valentin Schneider
Date: Mon Apr 15 2024 - 07:35:09 EST


Hi,

This is v5 of the series where the tw_timer is un-pinned to get rid of
interferences in isolated CPUs setups.

The first patch is a new one stemming from Jakub's bug reported. It's there
mainly to make the reviewing a bit easier, but as it changes behaviour it should
be squashed with the second one.

Revisions
=========

v4 -> v5
++++++++

o Rebased against latest Linus' tree
o Converted tw_timer into a delayed work following Jakub's bug report on v4
http://lore.kernel.org/r/20240411100536.224fa1e7@xxxxxxxxxx

v3 -> v4
++++++++

o Rebased against latest Linus' tree
o Added ehash lock usage to serialize scheduling vs descheduling of the tw_timer
(Paolo)

v2 -> v3
++++++++

o Dropped bh_disable patch
o Rebased against latest Linus' tree

RFCv1 -> v2
++++++++

o Added comment in inet_twsk_deschedule_put() to highlight the race
o Added bh_disable patch

Valentin Schneider (2):
SQUASH: tcp/dcpp: Convert timewait timer into a delayed_work
tcp/dcpp: Un-pin tw_timer

include/net/inet_timewait_sock.h | 8 +-
net/dccp/minisocks.c | 9 +--
net/ipv4/inet_diag.c | 2 +-
net/ipv4/inet_timewait_sock.c | 73 +++++++++++++------
net/ipv4/tcp_ipv4.c | 2 +-
net/ipv4/tcp_minisocks.c | 9 +--
net/ipv6/tcp_ipv6.c | 2 +-
.../selftests/bpf/progs/bpf_iter_tcp4.c | 2 +-
.../selftests/bpf/progs/bpf_iter_tcp6.c | 2 +-
9 files changed, 69 insertions(+), 40 deletions(-)

--
2.43.0