From: Nicolas Ferre <nicolas.ferre@microchip.com>
To: Markus Elfring <Markus.Elfring@web.de>,
<kernel-janitors@vger.kernel.org>, <linux-clk@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Claudiu Beznea <claudiu.beznea@microchip.com>,
Michael Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>
Cc: <cocci@inria.fr>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH resent] clk: at91: sama7g5: Add two jump labels in sama7g5_pmc_setup()
Date: Tue, 28 Mar 2023 10:30:34 +0200 [thread overview]
Message-ID: <7890284f-5809-2f46-9d5f-52e20a3ec327@microchip.com> (raw)
In-Reply-To: <9e3705dc-7a70-c584-916e-ae582c7667b6@web.de>
On 25/03/2023 at 15:05, Markus Elfring wrote:
> Date: Fri, 17 Mar 2023 20:02:34 +0100
>
> The label “err_free” was used to jump to another pointer check despite of
> the detail in the implementation of the function “sama7g5_pmc_setup”
> that it was determined already that the corresponding variable contained
> a null pointer (because of a failed memory allocation).
>
> * Thus use additional labels.
>
> * Delete an extra pointer check at the end which became unnecessary
> with this refactoring.
>
> This issue was detected by using the Coccinelle software.
Fine, but I'm sorry that it complexity the function for no real value.
Other clk drivers have the same pattern so I want them to all stay the same.
This is a NACK, sorry about that.
Regards,
Nicolas
> Fixes: cb783bbbcf54c36256006895c215e86c5e7266d8 ("clk: at91: sama7g5: add clock support for sama7g5")
> Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
> ---
> drivers/clk/at91/sama7g5.c | 23 +++++++++++------------
> 1 file changed, 11 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/clk/at91/sama7g5.c b/drivers/clk/at91/sama7g5.c
> index f135b662f1ff..224b1f2ebef2 100644
> --- a/drivers/clk/at91/sama7g5.c
> +++ b/drivers/clk/at91/sama7g5.c
> @@ -927,25 +927,25 @@ static void __init sama7g5_pmc_setup(struct device_node *np)
> (ARRAY_SIZE(sama7g5_mckx) + ARRAY_SIZE(sama7g5_gck)),
> GFP_KERNEL);
> if (!alloc_mem)
> - goto err_free;
> + goto free_pmc;
>
> hw = at91_clk_register_main_rc_osc(regmap, "main_rc_osc", 12000000,
> 50000000);
> if (IS_ERR(hw))
> - goto err_free;
> + goto free_alloc_mem;
>
> bypass = of_property_read_bool(np, "atmel,osc-bypass");
>
> hw = at91_clk_register_main_osc(regmap, "main_osc", mainxtal_name,
> bypass);
> if (IS_ERR(hw))
> - goto err_free;
> + goto free_alloc_mem;
>
> parent_names[0] = "main_rc_osc";
> parent_names[1] = "main_osc";
> hw = at91_clk_register_sam9x5_main(regmap, "mainck", parent_names, 2);
> if (IS_ERR(hw))
> - goto err_free;
> + goto free_alloc_mem;
>
> sama7g5_pmc->chws[PMC_MAIN] = hw;
>
> @@ -987,7 +987,7 @@ static void __init sama7g5_pmc_setup(struct device_node *np)
> }
>
> if (IS_ERR(hw))
> - goto err_free;
> + goto free_alloc_mem;
>
> if (sama7g5_plls[i][j].eid)
> sama7g5_pmc->chws[sama7g5_plls[i][j].eid] = hw;
> @@ -999,7 +999,7 @@ static void __init sama7g5_pmc_setup(struct device_node *np)
> &mck0_layout, &mck0_characteristics,
> &pmc_mck0_lock, CLK_GET_RATE_NOCACHE, 5);
> if (IS_ERR(hw))
> - goto err_free;
> + goto free_alloc_mem;
>
> sama7g5_pmc->chws[PMC_MCK] = hw;
>
> @@ -1128,12 +1128,11 @@ static void __init sama7g5_pmc_setup(struct device_node *np)
> return;
>
> err_free:
> - if (alloc_mem) {
> - for (i = 0; i < alloc_mem_size; i++)
> - kfree(alloc_mem[i]);
> - kfree(alloc_mem);
> - }
> -
> + for (i = 0; i < alloc_mem_size; i++)
> + kfree(alloc_mem[i]);
> +free_alloc_mem:
> + kfree(alloc_mem);
> +free_pmc:
> kfree(sama7g5_pmc);
> }
>
> --
> 2.40.0
>
--
Nicolas Ferre
next parent reply other threads:[~2023-03-28 8:30 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <f9303bdc-b1a7-be5e-56c6-dfa8232b8b55@web.de>
[not found] ` <5ed1bc78-77a1-8eb8-43f9-6005d7de49c8@web.de>
[not found] ` <9e3705dc-7a70-c584-916e-ae582c7667b6@web.de>
2023-03-28 8:30 ` Nicolas Ferre [this message]
[not found] ` <7985ac57-5b33-e7df-f319-ad6ee0788e2c@web.de>
2023-03-28 22:02 ` [PATCH resent] clk: at91: sama7g5: Add two jump labels in sama7g5_pmc_setup() Alexandre Belloni
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=7890284f-5809-2f46-9d5f-52e20a3ec327@microchip.com \
--to=nicolas.ferre@microchip.com \
--cc=Markus.Elfring@web.de \
--cc=alexandre.belloni@bootlin.com \
--cc=claudiu.beznea@microchip.com \
--cc=cocci@inria.fr \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mturquette@baylibre.com \
--cc=sboyd@kernel.org \
/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