2023-12-11 02:46:39

by Kunwu Chan

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

devm_kasprintf() returns a pointer to dynamically allocated memory
which can be NULL upon failure.

Cc: Kunwu Chan <[email protected]>
Signed-off-by: Kunwu Chan <[email protected]>
---
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


2023-12-12 21:28:34

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe

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

2023-12-14 03:25:58

by Kunwu Chan

[permalink] [raw]
Subject: Re: [PATCH] net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe

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.