[PATCH v2 next] driver core: auxiliary bus: Fix IS_ERR() vs NULL mixup in __devm_auxiliary_device_create()

Dan Carpenter posted 1 patch 7 months, 4 weeks ago
drivers/base/auxiliary.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
[PATCH v2 next] driver core: auxiliary bus: Fix IS_ERR() vs NULL mixup in __devm_auxiliary_device_create()
Posted by Dan Carpenter 7 months, 4 weeks ago
This code was originally going to use error pointers but we decided it
should return NULL instead.  The error pointer code in
__devm_auxiliary_device_create() was left over from the first version.
Update it to use NULL.  No callers have been merged yet, so that makes
this change simple and self contained.

Fixes: eaa0d30216c1 ("driver core: auxiliary bus: add device creation helpers")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
v2: Originally I just updated the check for auxiliary_device_create()
    failure and returned ERR_PTR(-ENOMEM) but obviously the
    auxiliary_device_create() and devm_auxiliary_device_create()
    functions should return the same thing, NULL.

 drivers/base/auxiliary.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/base/auxiliary.c b/drivers/base/auxiliary.c
index 810b6105a75d..dba7c8e13a53 100644
--- a/drivers/base/auxiliary.c
+++ b/drivers/base/auxiliary.c
@@ -491,13 +491,13 @@ struct auxiliary_device *__devm_auxiliary_device_create(struct device *dev,
 	int ret;
 
 	auxdev = auxiliary_device_create(dev, modname, devname, platform_data, id);
-	if (IS_ERR(auxdev))
-		return auxdev;
+	if (!auxdev)
+		return NULL;
 
 	ret = devm_add_action_or_reset(dev, auxiliary_device_destroy,
 				       auxdev);
 	if (ret)
-		return ERR_PTR(ret);
+		return NULL;
 
 	return auxdev;
 }
-- 
2.47.2
Re: [PATCH v2 next] driver core: auxiliary bus: Fix IS_ERR() vs NULL mixup in __devm_auxiliary_device_create()
Posted by Leon Romanovsky 7 months, 4 weeks ago
On Wed, Apr 23, 2025 at 01:04:26PM +0300, Dan Carpenter wrote:
> This code was originally going to use error pointers but we decided it
> should return NULL instead.  The error pointer code in
> __devm_auxiliary_device_create() was left over from the first version.
> Update it to use NULL.  No callers have been merged yet, so that makes
> this change simple and self contained.
> 
> Fixes: eaa0d30216c1 ("driver core: auxiliary bus: add device creation helpers")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---
> v2: Originally I just updated the check for auxiliary_device_create()
>     failure and returned ERR_PTR(-ENOMEM) but obviously the
>     auxiliary_device_create() and devm_auxiliary_device_create()
>     functions should return the same thing, NULL.
> 
>  drivers/base/auxiliary.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 

Thanks,
Reviewed-by: Leon Romanovsky <leon@kernel.org>
Re: [PATCH v2 next] driver core: auxiliary bus: Fix IS_ERR() vs NULL mixup in __devm_auxiliary_device_create()
Posted by Jerome Brunet 7 months, 4 weeks ago
On Wed 23 Apr 2025 at 13:04, Dan Carpenter <dan.carpenter@linaro.org> wrote:

> This code was originally going to use error pointers but we decided it
> should return NULL instead.  The error pointer code in
> __devm_auxiliary_device_create() was left over from the first version.
> Update it to use NULL.  No callers have been merged yet, so that makes
> this change simple and self contained.
>
> Fixes: eaa0d30216c1 ("driver core: auxiliary bus: add device creation helpers")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>

Thanks !

Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>

> ---
> v2: Originally I just updated the check for auxiliary_device_create()
>     failure and returned ERR_PTR(-ENOMEM) but obviously the
>     auxiliary_device_create() and devm_auxiliary_device_create()
>     functions should return the same thing, NULL.
>
>  drivers/base/auxiliary.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/base/auxiliary.c b/drivers/base/auxiliary.c
> index 810b6105a75d..dba7c8e13a53 100644
> --- a/drivers/base/auxiliary.c
> +++ b/drivers/base/auxiliary.c
> @@ -491,13 +491,13 @@ struct auxiliary_device *__devm_auxiliary_device_create(struct device *dev,
>  	int ret;
>  
>  	auxdev = auxiliary_device_create(dev, modname, devname, platform_data, id);
> -	if (IS_ERR(auxdev))
> -		return auxdev;
> +	if (!auxdev)
> +		return NULL;
>  
>  	ret = devm_add_action_or_reset(dev, auxiliary_device_destroy,
>  				       auxdev);
>  	if (ret)
> -		return ERR_PTR(ret);
> +		return NULL;
>  
>  	return auxdev;
>  }

-- 
Jerome