[PATCH] bus: fsl-mc: Fix an API misuse in fsl_mc_device_add()

Haoxiang Li posted 1 patch 6 months, 3 weeks ago
drivers/bus/fsl-mc/fsl-mc-bus.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
[PATCH] bus: fsl-mc: Fix an API misuse in fsl_mc_device_add()
Posted by Haoxiang Li 6 months, 3 weeks ago
In fsl_mc_device_add(), use put_device() to give up the
device reference instead of kfree().

Fixes: bbf9d17d9875 ("staging: fsl-mc: Freescale Management Complex (fsl-mc) bus driver")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>
---
 drivers/bus/fsl-mc/fsl-mc-bus.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c
index a8be8cf246fb..dfd79ecf65b6 100644
--- a/drivers/bus/fsl-mc/fsl-mc-bus.c
+++ b/drivers/bus/fsl-mc/fsl-mc-bus.c
@@ -905,9 +905,7 @@ int fsl_mc_device_add(struct fsl_mc_obj_desc *obj_desc,
 	return 0;
 
 error_cleanup_dev:
-	kfree(mc_dev->regions);
-	kfree(mc_bus);
-	kfree(mc_dev);
+	put_device(&mc_dev->dev);
 
 	return error;
 }
-- 
2.25.1
Re: [PATCH] bus: fsl-mc: Fix an API misuse in fsl_mc_device_add()
Posted by Greg KH 6 months, 3 weeks ago
On Mon, May 26, 2025 at 04:36:22PM +0800, Haoxiang Li wrote:
> In fsl_mc_device_add(), use put_device() to give up the
> device reference instead of kfree().
> 
> Fixes: bbf9d17d9875 ("staging: fsl-mc: Freescale Management Complex (fsl-mc) bus driver")
> Cc: stable@vger.kernel.org
> Signed-off-by: Haoxiang Li <haoxiang_li2024@163.com>
> ---
>  drivers/bus/fsl-mc/fsl-mc-bus.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c
> index a8be8cf246fb..dfd79ecf65b6 100644
> --- a/drivers/bus/fsl-mc/fsl-mc-bus.c
> +++ b/drivers/bus/fsl-mc/fsl-mc-bus.c
> @@ -905,9 +905,7 @@ int fsl_mc_device_add(struct fsl_mc_obj_desc *obj_desc,
>  	return 0;
>  
>  error_cleanup_dev:
> -	kfree(mc_dev->regions);
> -	kfree(mc_bus);
> -	kfree(mc_dev);
> +	put_device(&mc_dev->dev);
>  
>  	return error;
>  }

No, sorry, this is not corrrect at all.  Always test your patches before
submitting them.

greg k-h