Re: [PATCH v3 1/9] misc: sram: fix enabled clock leak on error path

From: Philipp Zabel
Date: Tue May 19 2015 - 06:41:41 EST


Am Montag, den 18.05.2015, 22:08 +0300 schrieb Vladimir Zapolskiy:
> If devm_gen_pool_create() fails, the previously enabled sram->clk is
> not disabled on probe() exit.
>
> Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
> ---
> drivers/misc/sram.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/misc/sram.c b/drivers/misc/sram.c
> index eeaaf5f..b44a423 100644
> --- a/drivers/misc/sram.c
> +++ b/drivers/misc/sram.c
> @@ -90,16 +90,17 @@ static int sram_probe(struct platform_device *pdev)
> if (!sram)
> return -ENOMEM;
>
> + sram->pool = devm_gen_pool_create(&pdev->dev,
> + ilog2(SRAM_GRANULARITY), -1);
> + if (!sram->pool)
> + return -ENOMEM;
> +
> sram->clk = devm_clk_get(&pdev->dev, NULL);
> if (IS_ERR(sram->clk))
> sram->clk = NULL;
> else
> clk_prepare_enable(sram->clk);

Here you move sram->clk around, and later in patch 7 it gets moved
again. To me it looks like the two should be squashed together.

>
> - sram->pool = devm_gen_pool_create(&pdev->dev, ilog2(SRAM_GRANULARITY), -1);
> - if (!sram->pool)
> - return -ENOMEM;
> -
> /*
> * We need an additional block to mark the end of the memory region
> * after the reserved blocks from the dt are processed.

regards
Philipp

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/