From 86ab05366b556a41843f071302aab94122cf9f8a Mon Sep 17 00:00:00 2001 From: Daisuke Matsuda Date: Thu, 13 Mar 2025 15:45:40 +0900 Subject: [PATCH] RDMA/rxe: Fix incorrect return value of rxe_odp_atomic_op() rxe_mr_do_atomic_op() returns enum resp_states numbers, so the ODP counterpart must not return raw errno codes. Signed-off-by: Daisuke Matsuda Reviewed-by: Zhu Yanjun Link: https://patch.msgid.link/20250313064540.2619115-1-matsuda-daisuke@fujitsu.com Signed-off-by: Leon Romanovsky --- drivers/infiniband/sw/rxe/rxe_odp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/infiniband/sw/rxe/rxe_odp.c b/drivers/infiniband/sw/rxe/rxe_odp.c index 94f7bbe14981c..9f6e2bb2a269e 100644 --- a/drivers/infiniband/sw/rxe/rxe_odp.c +++ b/drivers/infiniband/sw/rxe/rxe_odp.c @@ -316,7 +316,7 @@ int rxe_odp_atomic_op(struct rxe_mr *mr, u64 iova, int opcode, err = rxe_odp_map_range_and_lock(mr, iova, sizeof(char), RXE_PAGEFAULT_DEFAULT); if (err < 0) - return err; + return RESPST_ERR_RKEY_VIOLATION; err = rxe_odp_do_atomic_op(mr, iova, opcode, compare, swap_add, orig_val); -- 2.47.2