RDMA/rxe: Don't overwrite errno from ib_umem_get()
authorXiao Yang <yangx.jy@fujitsu.com>
Mon, 21 Jun 2021 07:14:56 +0000 (15:14 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 19 Jul 2021 07:44:52 +0000 (09:44 +0200)
commit1df36030393ae3e101913b69b66d08156d2dc08f
tree17d7f2d1a48c076c93670295255a77dff11417cb
parentee33c042f492a4771683c830e23227b23e88fda0
RDMA/rxe: Don't overwrite errno from ib_umem_get()

[ Upstream commit 20ec0a6d6016aa28b9b3299be18baef1a0f91cd2 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/infiniband/sw/rxe/rxe_mr.c