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 <matsuda-daisuke@xxxxxxxxxxx> --- 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 94f7bbe14981..9f6e2bb2a269 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.43.0