From patchwork Mon Jun 3 09:36:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Westphal X-Patchwork-Id: 13683497 Received: from Chamillionaire.breakpoint.cc (Chamillionaire.breakpoint.cc [91.216.245.30]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6D71484A4C for ; Mon, 3 Jun 2024 09:37:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.216.245.30 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717407446; cv=none; b=BOIqYSe6IriXFGRwLOdTt5MiPxTQkq+JPnE+8xyDXsd1fAFZlPC5lLEiEXHvpUEXAb9VVulu5ubkyXCSE9KOpWIBDqr0zuvt86Nc3snpQbIwL1iAoT9ejsYRyu6xc5YBrZqp/JpBtEkK72hWfhHgbkhVfD156HCl33pQuT9M/wY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717407446; c=relaxed/simple; bh=jLXL6yoOAXB9948xB5BgPgh9JjDORCujSpegEBlbC6Q=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=YBXT+QCeVhbD3gNqfDPqnMOh9ZBHtI+i8+A7KkymM3JKBUWSSGCCjUyq5DysAnpLgiBFzAM5KrCTgkSCd8edtLrJJfwucBqp0ITf2KKaUffuCvm7dHnB2JCpZmRtxmVGLa/Oo+/r+B7AEPhYoiYRh/wWxW1MW1J6uz/+gm3oFqw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=strlen.de; spf=pass smtp.mailfrom=breakpoint.cc; arc=none smtp.client-ip=91.216.245.30 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=strlen.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=breakpoint.cc Received: from fw by Chamillionaire.breakpoint.cc with local (Exim 4.92) (envelope-from ) id 1sE480-00012Z-6l; Mon, 03 Jun 2024 11:37:20 +0200 From: Florian Westphal To: Cc: Paolo Abeni , "David S. Miller" , Eric Dumazet , Jakub Kicinski , mleitner@redhat.com, juri.lelli@redhat.com, vschneid@redhat.com, tglozar@redhat.com, dsahern@kernel.org, bigeasy@linutronix.de, tglx@linutronix.de Subject: [PATCH net-next v6 0/3] net: tcp: un-pin tw timer Date: Mon, 3 Jun 2024 11:36:09 +0200 Message-ID: <20240603093625.4055-1-fw@strlen.de> X-Mailer: git-send-email 2.44.2 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Patchwork-Delegate: kuba@kernel.org This is v6 of the series where the tw_timer is un-pinned to get rid of interferences in isolated CPUs setups. First patch makes necessary preparations, existing code relies on TIMER_PINNED to avoid races. Second patch un-pins the TW timer. Could be folded into the first one, but it might help wrt. bisection. Third patch is a minor cleanup to move a helper from .h to the only remaining compilation unit. Tested with iperf3 and stress-ng socket mode. Changes since previous iteration: - do not use work queues, keep timers as-is - use timer_shutdown (can't wait for timer with spinlock held) - keep existing tw sk refcount (3) Florian Westphal (2): net: tcp: un-pin the tw_timer tcp: move inet_twsk_schedule helper out of header Valentin Schneider (1): net: tcp/dcpp: prepare for tw_timer un-pinning include/net/inet_timewait_sock.h | 11 ++--- net/dccp/minisocks.c | 3 +- net/ipv4/inet_timewait_sock.c | 81 +++++++++++++++++++++++++++----- net/ipv4/tcp_minisocks.c | 3 +- 4 files changed, 74 insertions(+), 24 deletions(-)