[PATCH v1] devres: simplify devm_kstrdup() using devm_kmemdup()

Raag Jadav posted 1 patch 10 months, 1 week ago
There is a newer version of this series
drivers/base/devres.c | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)
[PATCH v1] devres: simplify devm_kstrdup() using devm_kmemdup()
Posted by Raag Jadav 10 months, 1 week ago
devm_kstrdup() logic pretty much reflects devm_kmemdup() for strings,
so just reuse it.

Signed-off-by: Raag Jadav <raag.jadav@intel.com>
---
 drivers/base/devres.c | 12 +-----------
 1 file changed, 1 insertion(+), 11 deletions(-)

diff --git a/drivers/base/devres.c b/drivers/base/devres.c
index d8a733ea5e1a..82fdc1c55045 100644
--- a/drivers/base/devres.c
+++ b/drivers/base/devres.c
@@ -976,17 +976,7 @@ EXPORT_SYMBOL_GPL(devm_krealloc);
  */
 char *devm_kstrdup(struct device *dev, const char *s, gfp_t gfp)
 {
-	size_t size;
-	char *buf;
-
-	if (!s)
-		return NULL;
-
-	size = strlen(s) + 1;
-	buf = devm_kmalloc(dev, size, gfp);
-	if (buf)
-		memcpy(buf, s, size);
-	return buf;
+	return s ? devm_kmemdup(dev, s, strlen(s) + 1, gfp) : NULL;
 }
 EXPORT_SYMBOL_GPL(devm_kstrdup);
 
-- 
2.34.1
Re: [PATCH v1] devres: simplify devm_kstrdup() using devm_kmemdup()
Posted by Andy Shevchenko 10 months, 1 week ago
On Mon, Apr 07, 2025 at 05:43:11PM +0530, Raag Jadav wrote:
> devm_kstrdup() logic pretty much reflects devm_kmemdup() for strings,
> so just reuse it.

...

>  char *devm_kstrdup(struct device *dev, const char *s, gfp_t gfp)
>  {
> -	size_t size;
> -	char *buf;

> -	if (!s)
> -		return NULL;

There is no point to touch these lines.
And this is the style used in the file elsewhere.

> -	size = strlen(s) + 1;
> -	buf = devm_kmalloc(dev, size, gfp);
> -	if (buf)
> -		memcpy(buf, s, size);
> -	return buf;
> +	return s ? devm_kmemdup(dev, s, strlen(s) + 1, gfp) : NULL;
>  }

-- 
With Best Regards,
Andy Shevchenko