[PATCH 00/19] smbdirect client/server credit fixes

Stefan Metzmacher metze at samba.org
Wed Jan 21 19:50:10 UTC 2026


Hi,

here is my current state of the regression
fixes we have in 6.18 and 6.19-rc6.

The generic and server patches were tested
in as is, but without this 07/19
smb: server: let send_done handle a completionwithout IB_SEND_SIGNALED,
but the related logic was tested on my branch with common code.

The client patches are not tested yet,
but they compile and I want to make it possible
to include in linux-next for testing.

I also need to add some more Fixes tags.

I'll do more tests with this tomorrow.

Stefan Metzmacher (19):
  smb: smbdirect: introduce smbdirect_socket.recv_io.credits.available
  smb: smbdirect: introduce smbdirect_socket.send_io.bcredits.*
  smb: server: make use of smbdirect_socket.recv_io.credits.available
  smb: server: let recv_done() queue a refill when the peer is low on
    credits
  smb: server: make use of smbdirect_socket.send_io.bcredits
  smb: server: fix last send credit problem causing disconnects
  smb: server: let send_done handle a completion without
    IB_SEND_SIGNALED
  smb: client: make use of smbdirect_socket.recv_io.credits.available
  smb: client: let recv_done() queue a refill when the peer is low on
    credits
  smb: client: let smbd_post_send() make use of request->wr
  smb: client: remove pointless sc->recv_io.credits.count rollback
  smb: client: remove pointless sc->send_io.pending handling in
    smbd_post_send_iter()
  smb: client: port and use the wait_for_credits logic used by server
  smb: client: split out smbd_ib_post_send()
  smb: client: introduce and use smbd_{alloc,free}_send_io()
  smb: client: use smbdirect_send_batch processing
  smb: client: make use of smbdirect_socket.send_io.bcredits
  smb: client: fix last send credit problem causing disconnects
  smb: client: let send_done handle a completion without
    IB_SEND_SIGNALED

 fs/smb/client/smbdirect.c                  | 491 ++++++++++++++++-----
 fs/smb/common/smbdirect/smbdirect_socket.h |  18 +
 fs/smb/server/transport_rdma.c             | 147 +++++-
 3 files changed, 545 insertions(+), 111 deletions(-)

-- 
2.43.0




More information about the samba-technical mailing list