* [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx()
@ 2015-05-30 6:12 Roland Dreier
2015-05-31 3:01 ` Nicholas A. Bellinger
2015-05-31 12:54 ` Sagi Grimberg
0 siblings, 2 replies; 3+ messages in thread
From: Roland Dreier @ 2015-05-30 6:12 UTC (permalink / raw)
To: Nicholas A. Bellinger
Cc: Doug Ledford, Sagi Grimberg, linux-rdma, target-devel
From: Roland Dreier <roland@purestorage.com>
We don't assign pi_ctx to desc->pi_ctx until we're certain to succeed
in the function. That means the cleanup path should use the local
pi_ctx variable, not desc->pi_ctx.
This was detected by Coverity (CID 1260062).
Signed-off-by: Roland Dreier <roland@purestorage.com>
---
drivers/infiniband/ulp/isert/ib_isert.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
index 327529ee85eb..3f40319a55da 100644
--- a/drivers/infiniband/ulp/isert/ib_isert.c
+++ b/drivers/infiniband/ulp/isert/ib_isert.c
@@ -547,11 +547,11 @@ isert_create_pi_ctx(struct fast_reg_descriptor *desc,
return 0;
err_prot_mr:
- ib_dereg_mr(desc->pi_ctx->prot_mr);
+ ib_dereg_mr(pi_ctx->prot_mr);
err_prot_frpl:
- ib_free_fast_reg_page_list(desc->pi_ctx->prot_frpl);
+ ib_free_fast_reg_page_list(pi_ctx->prot_frpl);
err_pi_ctx:
- kfree(desc->pi_ctx);
+ kfree(pi_ctx);
return ret;
}
--
2.1.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx()
2015-05-30 6:12 [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx() Roland Dreier
@ 2015-05-31 3:01 ` Nicholas A. Bellinger
2015-05-31 12:54 ` Sagi Grimberg
1 sibling, 0 replies; 3+ messages in thread
From: Nicholas A. Bellinger @ 2015-05-31 3:01 UTC (permalink / raw)
To: Roland Dreier; +Cc: Doug Ledford, Sagi Grimberg, linux-rdma, target-devel
On Fri, 2015-05-29 at 23:12 -0700, Roland Dreier wrote:
> From: Roland Dreier <roland@purestorage.com>
>
> We don't assign pi_ctx to desc->pi_ctx until we're certain to succeed
> in the function. That means the cleanup path should use the local
> pi_ctx variable, not desc->pi_ctx.
>
> This was detected by Coverity (CID 1260062).
>
> Signed-off-by: Roland Dreier <roland@purestorage.com>
> ---
> drivers/infiniband/ulp/isert/ib_isert.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
> index 327529ee85eb..3f40319a55da 100644
> --- a/drivers/infiniband/ulp/isert/ib_isert.c
> +++ b/drivers/infiniband/ulp/isert/ib_isert.c
> @@ -547,11 +547,11 @@ isert_create_pi_ctx(struct fast_reg_descriptor *desc,
> return 0;
>
> err_prot_mr:
> - ib_dereg_mr(desc->pi_ctx->prot_mr);
> + ib_dereg_mr(pi_ctx->prot_mr);
> err_prot_frpl:
> - ib_free_fast_reg_page_list(desc->pi_ctx->prot_frpl);
> + ib_free_fast_reg_page_list(pi_ctx->prot_frpl);
> err_pi_ctx:
> - kfree(desc->pi_ctx);
> + kfree(pi_ctx);
>
> return ret;
> }
Applied to target-pending/master.
Thanks Roland!
--nab
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx()
2015-05-30 6:12 [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx() Roland Dreier
2015-05-31 3:01 ` Nicholas A. Bellinger
@ 2015-05-31 12:54 ` Sagi Grimberg
1 sibling, 0 replies; 3+ messages in thread
From: Sagi Grimberg @ 2015-05-31 12:54 UTC (permalink / raw)
To: Roland Dreier, Nicholas A. Bellinger
Cc: Doug Ledford, Sagi Grimberg, linux-rdma, target-devel
On 5/30/2015 9:12 AM, Roland Dreier wrote:
> From: Roland Dreier <roland@purestorage.com>
>
> We don't assign pi_ctx to desc->pi_ctx until we're certain to succeed
> in the function. That means the cleanup path should use the local
> pi_ctx variable, not desc->pi_ctx.
>
> This was detected by Coverity (CID 1260062).
>
> Signed-off-by: Roland Dreier <roland@purestorage.com>
> ---
> drivers/infiniband/ulp/isert/ib_isert.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c
> index 327529ee85eb..3f40319a55da 100644
> --- a/drivers/infiniband/ulp/isert/ib_isert.c
> +++ b/drivers/infiniband/ulp/isert/ib_isert.c
> @@ -547,11 +547,11 @@ isert_create_pi_ctx(struct fast_reg_descriptor *desc,
> return 0;
>
> err_prot_mr:
> - ib_dereg_mr(desc->pi_ctx->prot_mr);
> + ib_dereg_mr(pi_ctx->prot_mr);
> err_prot_frpl:
> - ib_free_fast_reg_page_list(desc->pi_ctx->prot_frpl);
> + ib_free_fast_reg_page_list(pi_ctx->prot_frpl);
> err_pi_ctx:
> - kfree(desc->pi_ctx);
> + kfree(pi_ctx);
>
> return ret;
> }
>
Acked-by: Sagi Grimberg <sagig@mellanox.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-05-31 12:54 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-30 6:12 [PATCH 3/3] iser-target: Fix error path in isert_create_pi_ctx() Roland Dreier
2015-05-31 3:01 ` Nicholas A. Bellinger
2015-05-31 12:54 ` Sagi Grimberg
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox