ath10k: sdio: fix memory leak for probe allocations
PATCH 1/1 ath10k: sdio: fix memory leak for probe allocations
These allocations are not freed upon release.
When on it; go for managed resources instead.
Signed-off-by Marcus Folkesson <[email protected]>
--- drivers/net/wireless/ath/ath10k/sdio.c | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-)
drivers/net/wireless/ath/ath10k/sdio.c +7 -13
@@ -1967,7 +1967,7 @@ static int ath10k_sdio_probe(struct sdio_func *func, ar_sdio =ath10k_sdio_priv (ar); ar_sdio->irq_data.irq_proc_reg = -kzalloc (sizeof (struct ath10k_sdio_irq_proc_regs ), +devm_kzalloc (ar->dev,sizeof (struct ath10k_sdio_irq_proc_regs ),GFP_KERNEL );if (!ar_sdio->irq_data.irq_proc_reg) { ret = -ENOMEM ;
@@ -1975,17 +1975,17 @@ static int ath10k_sdio_probe(struct sdio_func *func, } ar_sdio->irq_data.irq_en_reg = -kzalloc (sizeof (struct ath10k_sdio_irq_enable_regs ), +devm_kzalloc (ar->dev,sizeof (struct ath10k_sdio_irq_enable_regs ),GFP_KERNEL );if (!ar_sdio->irq_data.irq_en_reg) { ret = -ENOMEM ; - goto err_free_proc_reg; + goto err_core_destroy; } - ar_sdio->bmi_buf =kzalloc (BMI_MAX_CMDBUF_SIZE ,GFP_KERNEL ); + ar_sdio->bmi_buf =devm_kzalloc (ar->dev,BMI_MAX_CMDBUF_SIZE ,GFP_KERNEL );if (!ar_sdio->bmi_buf) { ret = -ENOMEM ; - goto err_free_en_reg; + goto err_core_destroy; } ar_sdio->func = func;
@@ -2005,7 +2005,7 @@ static int ath10k_sdio_probe(struct sdio_func *func, ar_sdio->workqueue =create_singlethread_workqueue ("ath10k_sdio_wq" );if (!ar_sdio->workqueue) { ret = -ENOMEM ; - goto err_free_bmi_buf; + goto err_core_destroy; }for (i =0 ; i <ATH10K_SDIO_BUS_REQUEST_MAX_NUM ; i++)
@@ -2021,7 +2021,7 @@ static int ath10k_sdio_probe(struct sdio_func *func, ret = -ENODEV ;ath10k_err (ar,"unsupported device id %u (0x%x)\n" , dev_id_base, id->device); - goto err_free_bmi_buf; + goto err_core_destroy; } ar->id.vendor = id->vendor;
@@ -2050,12 +2050,6 @@ static int ath10k_sdio_probe(struct sdio_func *func, err_free_wq:destroy_workqueue (ar_sdio->workqueue); -err_free_bmi_buf: -kfree (ar_sdio->bmi_buf); -err_free_en_reg: -kfree (ar_sdio->irq_data.irq_en_reg); -err_free_proc_reg: -kfree (ar_sdio->irq_data.irq_proc_reg); err_core_destroy:ath10k_core_destroy (ar);
Signature · 1 line
2.16.2
Quoted 6 lines · Marcus Folkesson
These allocations are not freed upon release.
When on it; go for managed resources instead.Signed-off-by Marcus Folkesson <[email protected]>[kvalo: fix two checkpatch warnings]Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
ec2c64e20257 ath10k: sdio: fix memory leak for probe allocations
Signature · 3 lines
https://patchwork.kernel.org/patch/10311597/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 6 lines · Marcus Folkesson
These allocations are not freed upon release.
When on it; go for managed resources instead.Signed-off-by Marcus Folkesson <[email protected]>[kvalo: fix two checkpatch warnings]Signed-off-by Kalle Valo <[email protected]>
Patch applied to ath-next branch of ath.git, thanks.
ec2c64e20257 ath10k: sdio: fix memory leak for probe allocations
Signature · 9 lines
https://patchwork.kernel.org/patch/10311597/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches _______________________________________________ ath10k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath10k