aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/sw/rxe/rxe_mr.c
diff options
context:
space:
mode:
authorXiao Yang <yangx.jy@fujitsu.com>2021-06-21 15:14:56 +0800
committerJason Gunthorpe <jgg@nvidia.com>2021-06-21 21:05:02 -0300
commit20ec0a6d6016aa28b9b3299be18baef1a0f91cd2 (patch)
tree3a4f4f674d8999f07b5e2430081a8e89cdbba78e /drivers/infiniband/sw/rxe/rxe_mr.c
parentIB/mlx4: Avoid field-overflowing memcpy() (diff)
downloadlinux-dev-20ec0a6d6016aa28b9b3299be18baef1a0f91cd2.tar.xz
linux-dev-20ec0a6d6016aa28b9b3299be18baef1a0f91cd2.zip
RDMA/rxe: Don't overwrite errno from ib_umem_get()
rxe_mr_init_user() always returns the fixed -EINVAL when ib_umem_get() fails so it's hard for user to know which actual error happens in ib_umem_get(). For example, ib_umem_get() will return -EOPNOTSUPP when trying to pin pages on a DAX file. Return actual error as mlx4/mlx5 does. Link: https://lore.kernel.org/r/20210621071456.4259-1-ice_yangxiao@163.com Signed-off-by: Xiao Yang <yangx.jy@fujitsu.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/sw/rxe/rxe_mr.c')
-rw-r--r--drivers/infiniband/sw/rxe/rxe_mr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/sw/rxe/rxe_mr.c b/drivers/infiniband/sw/rxe/rxe_mr.c
index 7f169329a8bf..6aabcb4de235 100644
--- a/drivers/infiniband/sw/rxe/rxe_mr.c
+++ b/drivers/infiniband/sw/rxe/rxe_mr.c
@@ -118,7 +118,7 @@ int rxe_mr_init_user(struct rxe_pd *pd, u64 start, u64 length, u64 iova,
if (IS_ERR(umem)) {
pr_warn("err %d from rxe_umem_get\n",
(int)PTR_ERR(umem));
- err = -EINVAL;
+ err = PTR_ERR(umem);
goto err1;
}