2011-02-19 23:29:23

by Stefan Weil

[permalink] [raw]
Subject: [PATCH] staging: brcm80211: Fix memory leak after kmalloc failure

This error was spotted by cppcheck:

drivers/staging/brcm80211/phy/wlc_phy_lcn.c:4053: error: Memory leak: ptr

Cc: Brett Rudley <[email protected]>
Cc: Henry Ptasinski <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Stefan Weil <[email protected]>
---
drivers/staging/brcm80211/phy/wlc_phy_lcn.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/staging/brcm80211/phy/wlc_phy_lcn.c b/drivers/staging/brcm80211/phy/wlc_phy_lcn.c
index 3ac2b49..9e2cb60 100644
--- a/drivers/staging/brcm80211/phy/wlc_phy_lcn.c
+++ b/drivers/staging/brcm80211/phy/wlc_phy_lcn.c
@@ -4050,6 +4050,7 @@ wlc_lcnphy_a1(phy_info_t *pi, int cal_type, int num_levels, int step_size_lg2)

phy_c32 = kmalloc(sizeof(u16) * 20, GFP_ATOMIC);
if (NULL == phy_c32) {
+ kfree(ptr);
return;
}
phy_c26 = read_phy_reg(pi, 0x6da);
--
1.7.2.3



2011-02-23 22:23:47

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH] staging: brcm80211: Fix memory leak after kmalloc failure

On Sun, Feb 20, 2011 at 12:29:11AM +0100, Stefan Weil wrote:
> This error was spotted by cppcheck:
>
> drivers/staging/brcm80211/phy/wlc_phy_lcn.c:4053: error: Memory leak: ptr
>
> Cc: Brett Rudley <[email protected]>
> Cc: Henry Ptasinski <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Signed-off-by: Stefan Weil <[email protected]>
> ---
> drivers/staging/brcm80211/phy/wlc_phy_lcn.c | 1 +

What tree did you make this against? This file isn't in the linux-next
tree anymore.

thanks,

greg k-h

2011-02-24 21:09:47

by Stefan Weil

[permalink] [raw]
Subject: Re: [PATCH] staging: brcm80211: Fix memory leak after kmalloc failure

Am 23.02.2011 23:05, schrieb Greg KH:
> On Sun, Feb 20, 2011 at 12:29:11AM +0100, Stefan Weil wrote:
>> This error was spotted by cppcheck:
>>
>> drivers/staging/brcm80211/phy/wlc_phy_lcn.c:4053: error: Memory leak: ptr
>>
>> Cc: Brett Rudley <[email protected]>
>> Cc: Henry Ptasinski <[email protected]>
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> Signed-off-by: Stefan Weil <[email protected]>
>> ---
>> drivers/staging/brcm80211/phy/wlc_phy_lcn.c | 1 +
>
> What tree did you make this against? This file isn't in the linux-next
> tree anymore.
>
> thanks,
>
> greg k-h

The patch was based on
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git.

In linux-next, the file was moved to a different directory:

from drivers/staging/brcm80211/phy/wlc_phy_lcn.c
to drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c

It still needs the same fix. I'll send a new patch based on latest
linux-next.

Regards
Stefan W.


2011-02-24 21:12:02

by Stefan Weil

[permalink] [raw]
Subject: [PATCH v2] staging: brcm80211: Fix memory leak after kmalloc failure

This error was spotted by cppcheck:

drivers/staging/brcm80211/phy/wlc_phy_lcn.c:4053: error: Memory leak: ptr

v2:
Rebased patch on linux-next (file was moved to a new directory).

Cc: Brett Rudley <[email protected]>
Cc: Henry Ptasinski <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Stefan Weil <[email protected]>
---
.../staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c
index 3fbbbb4..f027d50 100644
--- a/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c
+++ b/drivers/staging/brcm80211/brcmsmac/phy/wlc_phy_lcn.c
@@ -4051,6 +4051,7 @@ wlc_lcnphy_a1(phy_info_t *pi, int cal_type, int num_levels, int step_size_lg2)

phy_c32 = kmalloc(sizeof(u16) * 20, GFP_ATOMIC);
if (NULL == phy_c32) {
+ kfree(ptr);
return;
}
phy_c26 = read_phy_reg(pi, 0x6da);
--
1.7.2.3