From: Bob Pearson <rpearsonhpe@gmail.com>
To: Leon Romanovsky <leon@kernel.org>, Jason Gunthorpe <jgg@nvidia.com>
Cc: Leon Romanovsky <leonro@nvidia.com>,
Dan Carpenter <error27@gmail.com>,
linux-rdma@vger.kernel.org, Zhu Yanjun <zyjzyj2000@gmail.com>
Subject: Re: [PATCH rdma-next] RDMA/rxe: Clean kzalloc failure paths
Date: Wed, 29 Mar 2023 14:57:46 -0500 [thread overview]
Message-ID: <9e4d8e2e-d737-98a7-c2dd-174966da4551@gmail.com> (raw)
In-Reply-To: <d3cedf723b84e73e8062a67b7489d33802bafba2.1680113597.git.leon@kernel.org>
On 3/29/23 13:14, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@nvidia.com>
>
> There is no need to print any debug messages after failure to
> allocate memory, because kernel will print OOM dumps anyway.
>
> Together with removal of these messages, remove useless goto jumps.
>
> Fixes: 5bf944f24129 ("RDMA/rxe: Add error messages")
> Reported-by: Dan Carpenter <error27@gmail.com>
> Link: https://lore.kernel.org/all/ea43486f-43dd-4054-b1d5-3a0d202be621@kili.mountain
> Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
> ---
> drivers/infiniband/sw/rxe/rxe_queue.c | 5 ++---
> drivers/infiniband/sw/rxe/rxe_verbs.c | 23 ++++++-----------------
> 2 files changed, 8 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/infiniband/sw/rxe/rxe_queue.c b/drivers/infiniband/sw/rxe/rxe_queue.c
> index d6dbf5a0058d..9611ee191a46 100644
> --- a/drivers/infiniband/sw/rxe/rxe_queue.c
> +++ b/drivers/infiniband/sw/rxe/rxe_queue.c
> @@ -61,11 +61,11 @@ struct rxe_queue *rxe_queue_init(struct rxe_dev *rxe, int *num_elem,
>
> /* num_elem == 0 is allowed, but uninteresting */
> if (*num_elem < 0)
> - goto err1;
> + return NULL;
>
> q = kzalloc(sizeof(*q), GFP_KERNEL);
> if (!q)
> - goto err1;
> + return NULL;
>
> q->rxe = rxe;
> q->type = type;
> @@ -100,7 +100,6 @@ struct rxe_queue *rxe_queue_init(struct rxe_dev *rxe, int *num_elem,
>
> err2:
> kfree(q);
> -err1:
> return NULL;
> }
>
> diff --git a/drivers/infiniband/sw/rxe/rxe_verbs.c b/drivers/infiniband/sw/rxe/rxe_verbs.c
> index 090d5bfb1e18..06f071832635 100644
> --- a/drivers/infiniband/sw/rxe/rxe_verbs.c
> +++ b/drivers/infiniband/sw/rxe/rxe_verbs.c
> @@ -1198,11 +1198,8 @@ static struct ib_mr *rxe_get_dma_mr(struct ib_pd *ibpd, int access)
> int err;
>
> mr = kzalloc(sizeof(*mr), GFP_KERNEL);
> - if (!mr) {
> - err = -ENOMEM;
> - rxe_dbg_dev(rxe, "no memory for mr");
> - goto err_out;
> - }
> + if (!mr)
> + return ERR_PTR(-ENOMEM);
>
> err = rxe_add_to_pool(&rxe->mr_pool, mr);
> if (err) {
> @@ -1220,7 +1217,6 @@ static struct ib_mr *rxe_get_dma_mr(struct ib_pd *ibpd, int access)
>
> err_free:
> kfree(mr);
> -err_out:
> rxe_err_pd(pd, "returned err = %d", err);
> return ERR_PTR(err);
> }
> @@ -1235,11 +1231,8 @@ static struct ib_mr *rxe_reg_user_mr(struct ib_pd *ibpd, u64 start,
> int err, cleanup_err;
>
> mr = kzalloc(sizeof(*mr), GFP_KERNEL);
> - if (!mr) {
> - err = -ENOMEM;
> - rxe_dbg_pd(pd, "no memory for mr");
> - goto err_out;
> - }
> + if (!mr)
> + return ERR_PTR(-ENOMEM);
>
> err = rxe_add_to_pool(&rxe->mr_pool, mr);
> if (err) {
> @@ -1266,7 +1259,6 @@ static struct ib_mr *rxe_reg_user_mr(struct ib_pd *ibpd, u64 start,
> rxe_err_mr(mr, "cleanup failed, err = %d", cleanup_err);
> err_free:
> kfree(mr);
> -err_out:
> rxe_err_pd(pd, "returned err = %d", err);
> return ERR_PTR(err);
> }
> @@ -1287,11 +1279,8 @@ static struct ib_mr *rxe_alloc_mr(struct ib_pd *ibpd, enum ib_mr_type mr_type,
> }
>
> mr = kzalloc(sizeof(*mr), GFP_KERNEL);
> - if (!mr) {
> - err = -ENOMEM;
> - rxe_dbg_mr(mr, "no memory for mr");
> - goto err_out;
> - }
> + if (!mr)
> + return ERR_PTR(-ENOMEM);
>
> err = rxe_add_to_pool(&rxe->mr_pool, mr);
> if (err) {
These are all fine. Thanks!
Reviewed-by:- Bob Pearson <rpearsonhpe@gmail.com>
next prev parent reply other threads:[~2023-03-29 19:57 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-29 18:14 [PATCH rdma-next] RDMA/rxe: Clean kzalloc failure paths Leon Romanovsky
2023-03-29 18:44 ` Dan Carpenter
2023-03-29 19:18 ` Leon Romanovsky
2023-03-29 19:57 ` Bob Pearson [this message]
2023-03-30 6:56 ` Leon Romanovsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9e4d8e2e-d737-98a7-c2dd-174966da4551@gmail.com \
--to=rpearsonhpe@gmail.com \
--cc=error27@gmail.com \
--cc=jgg@nvidia.com \
--cc=leon@kernel.org \
--cc=leonro@nvidia.com \
--cc=linux-rdma@vger.kernel.org \
--cc=zyjzyj2000@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox