[PATCH net v3 0/3] net/rds: Bug fix ports

Allison Henderson <[email protected]> Sun, 26 Jul 2026 16:04:46 -0700
Newsgroups org.kernel.vger.linux-rdma,org.kernel.vger.netdev
Message-ID <[email protected]>
Hi all,

This is a small set of net/rds bug fixes ported from uek to upstream
rds.  I've been working on extending the rds selftest case, but need to
stabilize a few more bugs and the first few fall into net with Fixes
tags. I decided to leverage fable for this set and I thought the ports we
clean and well explained.

[PATCH net 1/3] net/rds: don't use unpin_user_pages_dirty_lock() from atomic context
   Avoids potentially sleeping in an atomic context by queueing page dirtying in a work
   item, which is then completed in a process context.

[PATCH net 2/3] net/rds: hold the socket while an rds_mr references it
   Port: commit c4d69e511f3b ("rds: Add proper refcnt when an RDS MR references an RDS Socket")
   https://github.com/oracle/linux-uek/commit/94549e4732d8

[PATCH net-next 3/3] net/rds: fix rds_message leak in the rds_send_xmit() drop path
  Port: commit 94549e4732d8 ("net/rds: fix rds_message memleak in rds_send_xmit")
  https://github.com/oracle/linux-uek/commit/94549e4732d8

These were carved out of a larger porting effort, but I'll follow up with a few more
targeted for net-net after these land in net.

Question and comments appreciated!

Thanks,
Allison

Change log
v2:
  - Patch 1/3: re-written to delay ditying through queued work items
  - Patch 3/3: fixed check patch nits
v3:
  - Patch 3/3: Added extra flush for possible purge work item queued
               after the first flush

Allison Henderson (1):
  net/rds: don't use unpin_user_pages_dirty_lock() from atomic context

HÃ¥kon Bugge (1):
  net/rds: hold the socket while an rds_mr references it

Sharath Srinivasan (1):
  net/rds: fix rds_message leak in the rds_send_xmit() drop path

 net/rds/ib.c      | 12 ++++++++++++
 net/rds/message.c | 34 ++++++++++++++++++++++++++++++++++
 net/rds/rdma.c    | 18 ++++++++++++++++--
 net/rds/rds.h     |  6 ++++++
 net/rds/send.c    | 18 +++++++++++++++---
 5 files changed, 83 insertions(+), 5 deletions(-)

-- 
2.25.1