[PATCH net-next v5 0/2] net/rds: RDS-TCP bug fix collection, subset 1: Work queue scalability
From: Allison Henderson <achender@kernel.org>
Date: 2026-01-09 22:48:45
Also in:
linux-rdma
From: Allison Henderson <redacted> Hi all, This is subset 1 of the RDS-TCP bug fix collection series I posted last Oct. The greater series aims to correct multiple rds-tcp bugs that can cause dropped or out of sequence messages. The set was starting to get a bit large, so I've broken it down into smaller sets to make reviews more manageable. In this subset, we focus on work queue scalability. Messages queues are refactored to operate in parallel across multiple connections, which improves response times and avoids timeouts. The entire set can be viewed in the rfc here: https://lore.kernel.org/netdev/20251022191715.157755-1-achender@kernel.org/ (local) Questions, comments, flames appreciated! Thanks! Allison Change Log: rfc->v1 - Fixed lkp warnings and white space cleanup - Split out the workqueue changes as a subset v2 [PATCH 1/2] net/rds: Add per cp work queue - Checkpatch nits [PATCH 2/2] net/rds: Give each connection its own workqueue - Checkpatch nits - Updated commit message with workqueue overhead accounting v3 [PATCH 2/2] net/rds: Give each connection path its own workqueue - Updated commit message with worst case connection path accounting - Use rds_wq as a fall back if queue alloc fails - Checkpatch nits v4 [PATCH 2/2] net/rds: Give each connection path its own workqueue - Fixed memleak warning in __rds_conn_create error path v5 Fixed AI complaints [PATCH 1/2] net/rds: Add per cp work queue - updated rds_wq in rds_cong_queue_updates and rds_ib_send_cqe_handler [PATCH 2/2] net/rds: Give each connection path its own workqueue - free paths on race detection error and move freeing of conn->c_path outside of spinlocks Allison Henderson (2): net/rds: Add per cp work queue net/rds: Give each connection path its own workqueue net/rds/cong.c | 2 +- net/rds/connection.c | 28 +++++++++++++++++++++++----- net/rds/ib_recv.c | 2 +- net/rds/ib_send.c | 4 ++-- net/rds/rds.h | 1 + net/rds/send.c | 9 +++++---- net/rds/tcp_recv.c | 2 +- net/rds/tcp_send.c | 2 +- net/rds/threads.c | 16 ++++++++-------- 9 files changed, 43 insertions(+), 23 deletions(-) -- 2.43.0