diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2017-06-08 11:52:36 -0400 |
---|---|---|
committer | Anna Schumaker <Anna.Schumaker@Netapp.com> | 2017-07-13 16:00:11 -0400 |
commit | 1f541895dae956df0be14a3190f507b601ac3fcc (patch) | |
tree | c4c05cc0be10d9db9505599aa15e2ef967b41992 /include/linux/nfs_fs_sb.h | |
parent | 8d75483a232aea9c3224b8146edf45b3bbb552fd (diff) | |
download | op-kernel-dev-1f541895dae956df0be14a3190f507b601ac3fcc.zip op-kernel-dev-1f541895dae956df0be14a3190f507b601ac3fcc.tar.gz |
xprtrdma: Don't defer MR recovery if ro_map fails
Deferred MR recovery does a DMA-unmapping of the MW. However, ro_map
invokes rpcrdma_defer_mr_recovery in some error cases where the MW
has not even been DMA-mapped yet.
Avoid a DMA-unmapping error replacing rpcrdma_defer_mr_recovery.
Also note that if ib_dma_map_sg is asked to map 0 nents, it will
return 0. So the extra "if (i == 0)" check is no longer needed.
Fixes: 42fe28f60763 ("xprtrdma: Do not leak an MW during a DMA ...")
Fixes: 505bbe64dd04 ("xprtrdma: Refactor MR recovery work queues")
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'include/linux/nfs_fs_sb.h')
0 files changed, 0 insertions, 0 deletions