From 5639fce1322dd8ae1398f8a7f530197484fc1f9e Mon Sep 17 00:00:00 2001 From: Shay Drory Date: Mon, 7 Oct 2019 12:09:05 +0300 Subject: [PATCH rdma-core 06/13] verbs: Set missing errno in ibv_cmd_reg_mr [ Upstream commit f9e127a4bffa09ee72fc0ce92228296a4d1c1588 ] Set missing errno in ibv_cmd_reg_mr() when implicit MR is used. Fixes: d4021e743fda7 ("verbs: Fix implicit ODP MR support for 32 bit systems") Signed-off-by: Shay Drory Signed-off-by: Yishai Hadas Signed-off-by: Nicolas Morey-Chaisemartin --- libibverbs/cmd.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libibverbs/cmd.c b/libibverbs/cmd.c index 3936e69b..26eaa479 100644 --- a/libibverbs/cmd.c +++ b/libibverbs/cmd.c @@ -340,8 +340,10 @@ int ibv_cmd_reg_mr(struct ibv_pd *pd, void *addr, size_t length, * In that case set the value in the command to what kernel expects. */ if (access & IBV_ACCESS_ON_DEMAND) { - if (length == SIZE_MAX && addr) + if (length == SIZE_MAX && addr) { + errno = EINVAL; return EINVAL; + } if (length == SIZE_MAX) cmd->length = UINT64_MAX; } -- 2.20.1