[PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe

Kunwu Chan posted 1 patch 2 years ago
There is a newer version of this series
drivers/net/dsa/vitesse-vsc73xx-core.c | 4 ++++
1 file changed, 4 insertions(+)
[PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe
Posted by Kunwu Chan 2 years ago
devm_kasprintf() returns a pointer to dynamically allocated memory
which can be NULL upon failure.

Cc: Kunwu Chan <kunwu.chan@hotmail.com>
Signed-off-by: Kunwu Chan <chentao@kylinos.cn>
---
 drivers/net/dsa/vitesse-vsc73xx-core.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/dsa/vitesse-vsc73xx-core.c b/drivers/net/dsa/vitesse-vsc73xx-core.c
index e6f29e4e508c..f136eb5aea69 100644
--- a/drivers/net/dsa/vitesse-vsc73xx-core.c
+++ b/drivers/net/dsa/vitesse-vsc73xx-core.c
@@ -1135,6 +1135,10 @@ static int vsc73xx_gpio_probe(struct vsc73xx *vsc)
 
 	vsc->gc.label = devm_kasprintf(vsc->dev, GFP_KERNEL, "VSC%04x",
 				       vsc->chipid);
+	if (!vsc->gc.label) {
+		dev_err(vsc->dev, "Fail to allocate memory\n");
+		return -ENOMEM;
+	}
 	vsc->gc.ngpio = 4;
 	vsc->gc.owner = THIS_MODULE;
 	vsc->gc.parent = vsc->dev;
-- 
2.39.2
Re: [PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe
Posted by Jakub Kicinski 2 years ago
On Mon, 11 Dec 2023 10:45:49 +0800 Kunwu Chan wrote:
>  	vsc->gc.label = devm_kasprintf(vsc->dev, GFP_KERNEL, "VSC%04x",
>  				       vsc->chipid);
> +	if (!vsc->gc.label) {
> +		dev_err(vsc->dev, "Fail to allocate memory\n");
> +		return -ENOMEM;
> +	}

Don't add error prints on memory allocations.
There will be an OOM splat in the logs.
-- 
pw-bot: cr
Re: [PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe
Posted by Kunwu Chan 2 years ago
Thanks for your reply.

I'll remove 'dev_err' in v2 patch.

Thanks again.

On 2023/12/13 05:27, Jakub Kicinski wrote:
> On Mon, 11 Dec 2023 10:45:49 +0800 Kunwu Chan wrote:
>>   	vsc->gc.label = devm_kasprintf(vsc->dev, GFP_KERNEL, "VSC%04x",
>>   				       vsc->chipid);
>> +	if (!vsc->gc.label) {
>> +		dev_err(vsc->dev, "Fail to allocate memory\n");
>> +		return -ENOMEM;
>> +	}
> 
> Don't add error prints on memory allocations.
> There will be an OOM splat in the logs.