diff mbox series

rsi: Fix memory leak in rsi_coex_attach()

Message ID 20221205061441.114632-1-yuancan@huawei.com
State New
Headers show
Series rsi: Fix memory leak in rsi_coex_attach() | expand

Commit Message

Yuan Can Dec. 5, 2022, 6:14 a.m. UTC
The coex_cb needs to be freed when rsi_create_kthread() failed in
rsi_coex_attach().

Fixes: 2108df3c4b18 ("rsi: add coex support")
Signed-off-by: Yuan Can <yuancan@huawei.com>
---
 drivers/net/wireless/rsi/rsi_91x_coex.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Simon Horman Dec. 8, 2022, 2:27 p.m. UTC | #1
On Mon, Dec 05, 2022 at 06:14:41AM +0000, Yuan Can wrote:
> The coex_cb needs to be freed when rsi_create_kthread() failed in
> rsi_coex_attach().
> 
> Fixes: 2108df3c4b18 ("rsi: add coex support")
> Signed-off-by: Yuan Can <yuancan@huawei.com>

Reviewed-by: Simon Horman <simon.horman@corigine.com>

> ---
>  drivers/net/wireless/rsi/rsi_91x_coex.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/net/wireless/rsi/rsi_91x_coex.c b/drivers/net/wireless/rsi/rsi_91x_coex.c
> index 8a3d86897ea8..45ac9371f262 100644
> --- a/drivers/net/wireless/rsi/rsi_91x_coex.c
> +++ b/drivers/net/wireless/rsi/rsi_91x_coex.c
> @@ -160,6 +160,7 @@ int rsi_coex_attach(struct rsi_common *common)
>  			       rsi_coex_scheduler_thread,
>  			       "Coex-Tx-Thread")) {
>  		rsi_dbg(ERR_ZONE, "%s: Unable to init tx thrd\n", __func__);
> +		kfree(coex_cb);

I was going to ask if the assignment of coex_cb to common->coex_cb
also needs to be cleaned up. But I see that the caller frees
common on error, so I think this is ok.

>  		return -EINVAL;
>  	}
>  	return 0;
> -- 
> 2.17.1
>
Kalle Valo Dec. 14, 2022, 12:19 p.m. UTC | #2
Yuan Can <yuancan@huawei.com> wrote:

> The coex_cb needs to be freed when rsi_create_kthread() failed in
> rsi_coex_attach().
> 
> Fixes: 2108df3c4b18 ("rsi: add coex support")
> Signed-off-by: Yuan Can <yuancan@huawei.com>
> Reviewed-by: Simon Horman <simon.horman@corigine.com>

Patch applied to wireless-next.git, thanks.

956fb851a6e1 wifi: rsi: Fix memory leak in rsi_coex_attach()
diff mbox series

Patch

diff --git a/drivers/net/wireless/rsi/rsi_91x_coex.c b/drivers/net/wireless/rsi/rsi_91x_coex.c
index 8a3d86897ea8..45ac9371f262 100644
--- a/drivers/net/wireless/rsi/rsi_91x_coex.c
+++ b/drivers/net/wireless/rsi/rsi_91x_coex.c
@@ -160,6 +160,7 @@  int rsi_coex_attach(struct rsi_common *common)
 			       rsi_coex_scheduler_thread,
 			       "Coex-Tx-Thread")) {
 		rsi_dbg(ERR_ZONE, "%s: Unable to init tx thrd\n", __func__);
+		kfree(coex_cb);
 		return -EINVAL;
 	}
 	return 0;