]> git.ipfire.org Git - thirdparty/linux.git/commit
svcrdma: Add back svcxprt_rdma::sc_read_complete_q
authorChuck Lever <chuck.lever@oracle.com>
Mon, 18 Dec 2023 22:31:54 +0000 (17:31 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Sun, 7 Jan 2024 22:54:32 +0000 (17:54 -0500)
commita937693a82fd2211c5e52b638959d1486a77d16a
treef0978a5395de7e8c92c4a6273560ac963b6cd7ee
parent4d9d69db898d05bd063548eee65d16a020676fec
svcrdma: Add back svcxprt_rdma::sc_read_complete_q

Having an nfsd thread waiting for an RDMA Read completion is
problematic if the Read responder (ie, the client) stops responding.
We need to go back to handling RDMA Reads by allowing the nfsd
thread to return to the svc scheduler, then waking a second thread
finish the RPC message once the Read completion fires.

As a next step, add a list_head upon which completed Reads are queued.
A subsequent patch will make use of this queue.

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