Re: [PATCH v3] nvmem: brcm_nvram: check for allocation failure

From: Joe Perches
Date: Fri May 20 2022 - 03:59:32 EST


On Fri, 2022-05-20 at 09:45 +0300, Dan Carpenter wrote:
> Check for if the kcalloc() fails.
>
> Cc: stable@xxxxxxxxxxxxxxx
> Fixes: 6e977eaa8280 ("nvmem: brcm_nvram: parse NVRAM content into NVMEM cells")
> Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
> Acked-by: Rafał Miłecki <rafal@xxxxxxxxxx>
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
> ---
> v3: Update fixes tag
> v2: I don't think anything changed in v2? Added tags?
[]
> diff --git a/drivers/nvmem/brcm_nvram.c b/drivers/nvmem/brcm_nvram.c
[]
> @@ -97,6 +97,8 @@ static int brcm_nvram_parse(struct brcm_nvram *priv)
> len = le32_to_cpu(header.len);
>
> data = kcalloc(1, len, GFP_KERNEL);
> + if (!data)
> + return -ENOMEM;

trivia:

Not sure the kcalloc(1. ..) is useful.

It might be simpler using kzalloc, though given the memcpy_fromio
below a kcalloc/kzalloc seems dubious and kmalloc could be used.

> memcpy_fromio(data, priv->base, len);
> data[len - 1] = '\0';
>