2022-01-17 05:00:39

by Xiaoke Wang

[permalink] [raw]
Subject: [PATCH] nvmem: meson-mx-efuse: check the return value of devm_kstrdup()

From: Xiaoke Wang <[email protected]>

devm_kstrdup() returns pointer to allocated string on success,
NULL on failure. So it is better to check the return value of it.

Signed-off-by: Xiaoke Wang <[email protected]>
---
drivers/nvmem/meson-mx-efuse.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/nvmem/meson-mx-efuse.c b/drivers/nvmem/meson-mx-efuse.c
index 07c9f38..38e6a5f 100644
--- a/drivers/nvmem/meson-mx-efuse.c
+++ b/drivers/nvmem/meson-mx-efuse.c
@@ -211,6 +211,9 @@ static int meson_mx_efuse_probe(struct platform_device *pdev)

efuse->config.name = devm_kstrdup(&pdev->dev, drvdata->name,
GFP_KERNEL);
+ if (!efuse->config.name)
+ return -ENOMEM;
+
efuse->config.owner = THIS_MODULE;
efuse->config.dev = &pdev->dev;
efuse->config.priv = efuse;
--


2022-01-17 11:07:10

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: [PATCH] nvmem: meson-mx-efuse: check the return value of devm_kstrdup()

Hello,

First of all: thank you for this patch!

On Sun, Jan 16, 2022 at 6:37 AM <[email protected]> wrote:
[...]
> @@ -211,6 +211,9 @@ static int meson_mx_efuse_probe(struct platform_device *pdev)
>
> efuse->config.name = devm_kstrdup(&pdev->dev, drvdata->name,
> GFP_KERNEL);
> + if (!efuse->config.name)
> + return -ENOMEM;
Looking at other drivers and also at drivers/nvmem/core.c I believe
that the whole devm_kstrdup is unnecessary.
Instead I think the code can be simplified as:
efuse->config.name = drvdata->name;

What do you think?


Best regards,
Martin