From: Allison Henderson <achender@kernel.org>
To: netdev@vger.kernel.org, linux-rdma@vger.kernel.org,
pabeni@redhat.com, edumazet@google.com, kuba@kernel.org,
horms@kernel.org
Cc: achender@kernel.org, jhubbard@nvidia.com, leon@kernel.org
Subject: [PATCH net-next 0/4] net/rds: Bug fix ports, part 2
Date: Thu, 6 Aug 2026 00:20:41 -0700 [thread overview]
Message-ID: <20260806072045.1092968-1-achender@kernel.org> (raw)
Hi all,
This is the next batch of net/rds fixes ported from the Oracle UEK
kernel, following up on the first set now in net-next [1]. As
discussed on the previous series, these target net-next since the
bugs are pretty old and could probably use the longer cycle.
Patches 3 and 4 close a teardown race that UEK fixed after a long
tail of failover crashes: quiescing the transmit path by *sampling*
the RDS_IN_XMIT/RDS_RECV_REFILL bits clear instead of acquiring them
is a store-buffering pattern. So on weakly ordered arches,
rds_send_xmit() can run concurrently with connection teardown
resetting the transmit state under it. Patch 3 makes
rds_conn_shutdown() take the bit locks. Patch 4 does the same for
the only other rds_send_path_reset() call site in
rds_tcp_reset_callbacks().
Patches 1 and 2 are small initialization hardening ports from the
same UEK series. re-initialize rds_send_xmit()'s to_be_dropped
list on its restart path, and initialize i_conn_path in
rds_inc_init() so both inc init helpers leave an equivalent,
fully-initialized structure. Neither has a known user-visible bug
upstream.
[PATCH net 1/4] net/rds: reinitialize to_be_dropped on rds_send_xmit() restart
Port commit 7f52b9968d79 ("net/rds: rds_send_xmit should INIT_LIST_HEAD (&to_be_dropped) on restart")
https://github.com/oracle/linux-uek/commit/7f52b9968d79
[PATCH net 2/4] net/rds: initialize i_conn_path in rds_inc_init()
Port commit 0ec6a520da4f ("rds: rds_inc_init() should initialize the inc->i_conn_path field")
https://github.com/oracle/linux-uek/commit/0ec6a520da4f
[PATCH net 3/4] net/rds: acquire the fastpath locks in rds_conn_shutdown()
Port commit 2b8aaa4f163b ("rds: Make sure transmit path and connection tear-down does not run concurrently")
https://github.com/oracle/linux-uek/commit/2b8aaa4f163b
[PATCH net 4/4] net/rds: acquire RDS_IN_XMIT in rds_tcp_reset_callbacks()
Extend the last port to cover extra call sites in rds_tcp_reset_callbacks()
Questions and comments appreciated!
Thanks,
Allison
[1] https://lore.kernel.org/netdev/20260730041629.3512480-1-achender@kernel.org/
Allison Henderson (1):
net/rds: acquire RDS_IN_XMIT in rds_tcp_reset_callbacks()
Håkon Bugge (1):
net/rds: acquire the fastpath locks in rds_conn_shutdown()
Sharath Srinivasan (1):
net/rds: reinitialize to_be_dropped on rds_send_xmit() restart
William Kucharski (1):
net/rds: initialize i_conn_path in rds_inc_init()
net/rds/connection.c | 22 ++++++++++++++++++++--
net/rds/recv.c | 1 +
net/rds/send.c | 6 ++++++
net/rds/tcp.c | 15 ++++++++++++++-
4 files changed, 41 insertions(+), 3 deletions(-)
base-commit: b0057c68df711bf6a62033c072ac61c4f9d3cbc1
--
2.25.1
next reply other threads:[~2026-08-06 7:20 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-06 7:20 Allison Henderson [this message]
2026-08-06 7:20 ` [PATCH net-next 1/4] net/rds: reinitialize to_be_dropped on rds_send_xmit() restart Allison Henderson
2026-08-06 7:20 ` [PATCH net-next 2/4] net/rds: initialize i_conn_path in rds_inc_init() Allison Henderson
2026-08-06 7:20 ` [PATCH net-next 3/4] net/rds: acquire the fastpath locks in rds_conn_shutdown() Allison Henderson
2026-08-06 7:20 ` [PATCH net-next 4/4] net/rds: acquire RDS_IN_XMIT in rds_tcp_reset_callbacks() Allison Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260806072045.1092968-1-achender@kernel.org \
--to=achender@kernel.org \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=jhubbard@nvidia.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox