RDMA/core: return -EOPNOSUPP for ODP unsupported device
authorLi Zhijian <lizhijian@fujitsu.com>
Sat, 1 Oct 2022 02:00:45 +0000 (10:00 +0800)
committerLeon Romanovsky <leon@kernel.org>
Wed, 19 Oct 2022 07:02:18 +0000 (10:02 +0300)
ib_reg_mr(3) which is used to register a MR with specific access flags
for specific HCA will set errno when something go wrong.
So, here we should return the specific -EOPNOTSUPP when the being
requested ODP access flag is unsupported by the HCA(such as RXE).

Signed-off-by: Li Zhijian <lizhijian@fujitsu.com>
Link: https://lore.kernel.org/r/20221001020045.8324-1-lizhijian@fujitsu.com
Reviewed-by: Zhu Yanjun <zyjzyj2000@gmail.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
include/rdma/ib_verbs.h

index 975d6e9efbcb441f25eecd630486530cd82107cd..a1f4d53a4bb63640d73c79486761f408e7d7604d 100644 (file)
@@ -4334,7 +4334,7 @@ static inline int ib_check_mr_access(struct ib_device *ib_dev,
 
        if (flags & IB_ACCESS_ON_DEMAND &&
            !(ib_dev->attrs.kernel_cap_flags & IBK_ON_DEMAND_PAGING))
-               return -EINVAL;
+               return -EOPNOTSUPP;
        return 0;
 }