From: Chuck Lever Date: Wed, 24 Apr 2019 13:39:00 +0000 (-0400) Subject: xprtrdma: Fix an frwr_map recovery nit X-Git-Tag: for-linus-20190516~30^2~37 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=b2ca473b920dfbaad7c4f9eb5043258ef71f321f;p=linux-block.git xprtrdma: Fix an frwr_map recovery nit After a DMA map failure in frwr_map, mark the MR so that recycling won't attempt to DMA unmap it. Signed-off-by: Chuck Lever Fixes: e2f34e26710b ("xprtrdma: Yet another double DMA-unmap") Signed-off-by: Anna Schumaker --- diff --git a/net/sunrpc/xprtrdma/frwr_ops.c b/net/sunrpc/xprtrdma/frwr_ops.c index 52cb6c1b0c2b..a2a2e01cb5dd 100644 --- a/net/sunrpc/xprtrdma/frwr_ops.c +++ b/net/sunrpc/xprtrdma/frwr_ops.c @@ -466,7 +466,7 @@ struct rpcrdma_mr_seg *frwr_map(struct rpcrdma_xprt *r_xprt, return seg; out_dmamap_err: - frwr->fr_state = FRWR_IS_INVALID; + mr->mr_dir = DMA_NONE; trace_xprtrdma_frwr_sgerr(mr, i); rpcrdma_mr_put(mr); return ERR_PTR(-EIO);