2016-01-10 02:19:26

by Jia-Ju Bai

[permalink] [raw]
Subject: [PATCH] iwl4965: Fix a memory leak in error handling code of __il4965_up

When il4965_hw_nic_init in __il4965_up fails, the memory allocated by
iwl4965_sta_alloc_lq in iwl4965_alloc_bcast_station is not freed.

This patches adds il_dealloc_bcast_stations in the error handling code of
__il4965_up to fix this problem.

This patch has been tested in real device, and it actually fixes the bug.

Signed-off-by: Jia-Ju Bai <[email protected]>
---
drivers/net/wireless/iwlegacy/4965-mac.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/wireless/iwlegacy/4965-mac.c b/drivers/net/wireless/iwlegacy/4965-mac.c
index 6656215..fd7b5c7 100644
--- a/drivers/net/wireless/iwlegacy/4965-mac.c
+++ b/drivers/net/wireless/iwlegacy/4965-mac.c
@@ -5577,6 +5577,7 @@ __il4965_up(struct il_priv *il)
ret = il4965_hw_nic_init(il);
if (ret) {
IL_ERR("Unable to init nic\n");
+ il_dealloc_bcast_stations(il);
return ret;
}

--
1.7.9.5




2016-01-11 13:41:11

by Jia-Ju Bai

[permalink] [raw]
Subject: Re: [PATCH] iwl4965: Fix a memory leak in error handling code of __il4965_up

On 01/11/2016 08:16 PM, Stanislaw Gruszka wrote:
>
> Please do not repost patches so frequent and if you repost
> the unchanged patch mark it so i.e. [PATCH repost].
>
> Stanislaw

Sorry for my reposting.

Jia-Ju Bai


2016-01-11 12:18:05

by Stanislaw Gruszka

[permalink] [raw]
Subject: Re: [PATCH] iwl4965: Fix a memory leak in error handling code of __il4965_up

On Sun, Jan 10, 2016 at 10:19:23AM +0800, Jia-Ju Bai wrote:
> diff --git a/drivers/net/wireless/iwlegacy/4965-mac.c b/drivers/net/wireless/iwlegacy/4965-mac.c
> index 6656215..fd7b5c7 100644
> --- a/drivers/net/wireless/iwlegacy/4965-mac.c
> +++ b/drivers/net/wireless/iwlegacy/4965-mac.c
> @@ -5577,6 +5577,7 @@ __il4965_up(struct il_priv *il)
> ret = il4965_hw_nic_init(il);
> if (ret) {
> IL_ERR("Unable to init nic\n");
> + il_dealloc_bcast_stations(il);
> return ret;
> }

Please do not repost patches so frequent and if you repost
the unchanged patch mark it so i.e. [PATCH repost].

Stanislaw

2016-01-11 12:44:44

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH] iwl4965: Fix a memory leak in error handling code of __il4965_up

Stanislaw Gruszka <[email protected]> writes:

> On Sun, Jan 10, 2016 at 10:19:23AM +0800, Jia-Ju Bai wrote:
>> diff --git a/drivers/net/wireless/iwlegacy/4965-mac.c b/drivers/net/wireless/iwlegacy/4965-mac.c
>> index 6656215..fd7b5c7 100644
>> --- a/drivers/net/wireless/iwlegacy/4965-mac.c
>> +++ b/drivers/net/wireless/iwlegacy/4965-mac.c
>> @@ -5577,6 +5577,7 @@ __il4965_up(struct il_priv *il)
>> ret = il4965_hw_nic_init(il);
>> if (ret) {
>> IL_ERR("Unable to init nic\n");
>> + il_dealloc_bcast_stations(il);
>> return ret;
>> }
>
> Please do not repost patches so frequent and if you repost
> the unchanged patch mark it so i.e. [PATCH repost].

"repost" just confuses me and creates more work for me. Better to ping
on the original patch and even better is to check patchwork which shows
up-to-date status of wireless patches:

https://patchwork.kernel.org/project/linux-wireless/list/

--
Kalle Valo