svcrdma: Add an async version of svc_rdma_send_ctxt_put()
authorChuck Lever <chuck.lever@oracle.com>
Tue, 21 Nov 2023 16:40:33 +0000 (11:40 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Sun, 7 Jan 2024 22:54:27 +0000 (17:54 -0500)
commitae225fe27b931de89b6b1e1bbe6de4de23000850
tree25de5c80e0f71497debcc0d9de48445aa7810e50
parent9c7e1a06588ee6962afe0dfe5a398e1d23212005
svcrdma: Add an async version of svc_rdma_send_ctxt_put()

DMA unmapping can take quite some time, so it should not be handled
in a single-threaded completion handler. Defer releasing send_ctxts
to the recently-added workqueue.

With this patch, DMA unmapping can be handled in parallel, and it
does not cause head-of-queue blocking of Send completions.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
include/linux/sunrpc/svc_rdma.h
net/sunrpc/xprtrdma/svc_rdma_sendto.c