]> git.baikalelectronics.ru Git - kernel.git/commit
xprtrdma: Do not recycle MR after FastReg/LocalInv flushes
authorChuck Lever <chuck.lever@oracle.com>
Mon, 19 Apr 2021 18:03:12 +0000 (14:03 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Mon, 26 Apr 2021 13:25:12 +0000 (09:25 -0400)
commitc1f1681dd2899681c511fcbce9a65e823ef35411
tree415766908cf1960441dbab10266739da1b84f117
parentdf21caea4914d226e718beb344b4db71616bafc4
xprtrdma: Do not recycle MR after FastReg/LocalInv flushes

Better not to touch MRs involved in a flush or post error until the
Send and Receive Queues are drained and the transport is fully
quiescent. Simply don't insert such MRs back onto the free list.
They remain on mr_all and will be released when the connection is
torn down.

I had thought that recycling would prevent hardware resources from
being tied up for a long time. However, since v5.7, a transport
disconnect destroys the QP and other hardware-owned resources. The
MRs get cleaned up nicely at that point.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
include/trace/events/rpcrdma.h
net/sunrpc/xprtrdma/frwr_ops.c