Re: [PATCH 2/5] misc: fastrpc: fix memory leak from miscdev->name

2019-09-18 Thread Bjorn Andersson
On Fri 13 Sep 08:25 PDT 2019, Jorge Ramirez-Ortiz wrote:

> From: Srinivas Kandagatla 
> 
> Fix a memory leak in miscdev->name by using devm_variant
> 
> Orignally reported by kmemleak:
> [] kmemleak_alloc+0x50/0x84
> [] __kmalloc_track_caller+0xe8/0x168
> [] kvasprintf+0x78/0x100
> [] kasprintf+0x50/0x74
> [] fastrpc_rpmsg_probe+0xd8/0x20c
> [] rpmsg_dev_probe+0xa8/0x148
> [] really_probe+0x208/0x248
> [] driver_probe_device+0x98/0xc0
> [] __device_attach_driver+0x9c/0xac
> [] bus_for_each_drv+0x60/0x8c
> [] __device_attach+0x8c/0x100
> [] device_initial_probe+0x20/0x28
> [] bus_probe_device+0x34/0x7c
> [] device_add+0x420/0x498
> [] device_register+0x24/0x2c
> 

Cc: sta...@vger.kernel.org
Fixes: f6f9279f2bf0 ("misc: fastrpc: Add Qualcomm fastrpc basic driver model")

> Signed-off-by: Srinivas Kandagatla 

You should append your S-o-b here, as you forwarded the patch.


Reviewed-by: Bjorn Andersson 

Regards,
Bjorn

> ---
>  drivers/misc/fastrpc.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
> index 8903388993d3..bc03500bfe60 100644
> --- a/drivers/misc/fastrpc.c
> +++ b/drivers/misc/fastrpc.c
> @@ -1599,8 +1599,8 @@ static int fastrpc_rpmsg_probe(struct rpmsg_device 
> *rpdev)
>   }
>  
>   data->miscdev.minor = MISC_DYNAMIC_MINOR;
> - data->miscdev.name = kasprintf(GFP_KERNEL, "fastrpc-%s",
> - domains[domain_id]);
> + data->miscdev.name = devm_kasprintf(rdev, GFP_KERNEL, "fastrpc-%s",
> + domains[domain_id]);
>   data->miscdev.fops = _fops;
>   err = misc_register(>miscdev);
>   if (err)
> -- 
> 2.23.0
> 


[PATCH 2/5] misc: fastrpc: fix memory leak from miscdev->name

2019-09-13 Thread Jorge Ramirez-Ortiz
From: Srinivas Kandagatla 

Fix a memory leak in miscdev->name by using devm_variant

Orignally reported by kmemleak:
[] kmemleak_alloc+0x50/0x84
[] __kmalloc_track_caller+0xe8/0x168
[] kvasprintf+0x78/0x100
[] kasprintf+0x50/0x74
[] fastrpc_rpmsg_probe+0xd8/0x20c
[] rpmsg_dev_probe+0xa8/0x148
[] really_probe+0x208/0x248
[] driver_probe_device+0x98/0xc0
[] __device_attach_driver+0x9c/0xac
[] bus_for_each_drv+0x60/0x8c
[] __device_attach+0x8c/0x100
[] device_initial_probe+0x20/0x28
[] bus_probe_device+0x34/0x7c
[] device_add+0x420/0x498
[] device_register+0x24/0x2c

Signed-off-by: Srinivas Kandagatla 
---
 drivers/misc/fastrpc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index 8903388993d3..bc03500bfe60 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -1599,8 +1599,8 @@ static int fastrpc_rpmsg_probe(struct rpmsg_device *rpdev)
}
 
data->miscdev.minor = MISC_DYNAMIC_MINOR;
-   data->miscdev.name = kasprintf(GFP_KERNEL, "fastrpc-%s",
-   domains[domain_id]);
+   data->miscdev.name = devm_kasprintf(rdev, GFP_KERNEL, "fastrpc-%s",
+   domains[domain_id]);
data->miscdev.fops = _fops;
err = misc_register(>miscdev);
if (err)
-- 
2.23.0