Re: [PATCH] clk: unchecked return of kmalloc_array

From: Nicholas Mc Guire
Date: Mon Dec 14 2015 - 09:06:44 EST


On Mon, Dec 14, 2015 at 02:16:55PM +0100, Nicholas Mc Guire wrote:
> kmalloc_array return is unchecked - given how parent_names is being treated
> in case of allocation error it probably is ok to treat clock->parents the
> same way and simply return.
>
> problem was located with coccinelle
>
> Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
> ---
>
> patch was compile tested for shmobile_defconfig
> (implies CONFIG_ARCH_SHMOBILE_MULTI=y)
>
> patch is against linux-next (localversion-next -next-20151214)
>
> drivers/clk/shmobile/clk-div6.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/clk/shmobile/clk-div6.c b/drivers/clk/shmobile/clk-div6.c
> index b4c8d67..e6b7533 100644
> --- a/drivers/clk/shmobile/clk-div6.c
> +++ b/drivers/clk/shmobile/clk-div6.c
> @@ -196,6 +196,8 @@ static void __init cpg_div6_clock_init(struct device_node *np)
>
> clock->parents = kmalloc_array(num_parents, sizeof(*clock->parents),
> GFP_KERNEL);
> + if (!clock->parents)
> + return;
> parent_names = kmalloc_array(num_parents, sizeof(*parent_names),
>

giving the callchain of kmalloc_array a look I guess there should be
some memset for parent_names and clock->parents - or is there a reason why
no memset would be needed here ?

thx!
hofrat

--
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/