2016-08-09 19:20:56

by Christian Engelmayer

[permalink] [raw]
Subject: [PATCH] rtlwifi: rtl8192de: Fix leak in _rtl92de_read_adapter_info()

In case rtl_get_hwinfo() fails, the function directly returns and leaks the
already allocated hwinfo memory. Go through the correct exit path.

Signed-off-by: Christian Engelmayer <[email protected]>
---
drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c b/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
index b0f632462335..57205514801c 100644
--- a/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
+++ b/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
@@ -1757,7 +1757,7 @@ static void _rtl92de_read_adapter_info(struct ieee80211_hw *hw)
return;

if (rtl_get_hwinfo(hw, rtlpriv, HWSET_MAX_SIZE, hwinfo, params))
- return;
+ goto exit;

_rtl92de_efuse_update_chip_version(hw);
_rtl92de_read_macphymode_and_bandtype(hw, hwinfo);
@@ -1790,6 +1790,7 @@ static void _rtl92de_read_adapter_info(struct ieee80211_hw *hw)
break;
}
rtlefuse->txpwr_fromeprom = true;
+exit:
kfree(hwinfo);
}

--
2.7.4



2016-08-10 18:26:29

by Larry Finger

[permalink] [raw]
Subject: Re: [PATCH] rtlwifi: rtl8192de: Fix leak in _rtl92de_read_adapter_info()

On 08/09/2016 02:19 PM, Christian Engelmayer wrote:
> In case rtl_get_hwinfo() fails, the function directly returns and leaks the
> already allocated hwinfo memory. Go through the correct exit path.
>
> Signed-off-by: Christian Engelmayer <[email protected]>
> ---
> drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)

This patch looks good. Thanks.

Acked-by: Larry Finger <[email protected]>

>
> diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c b/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
> index b0f632462335..57205514801c 100644
> --- a/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
> +++ b/drivers/net/wireless/realtek/rtlwifi/rtl8192de/hw.c
> @@ -1757,7 +1757,7 @@ static void _rtl92de_read_adapter_info(struct ieee80211_hw *hw)
> return;
>
> if (rtl_get_hwinfo(hw, rtlpriv, HWSET_MAX_SIZE, hwinfo, params))
> - return;
> + goto exit;
>
> _rtl92de_efuse_update_chip_version(hw);
> _rtl92de_read_macphymode_and_bandtype(hw, hwinfo);
> @@ -1790,6 +1790,7 @@ static void _rtl92de_read_adapter_info(struct ieee80211_hw *hw)
> break;
> }
> rtlefuse->txpwr_fromeprom = true;
> +exit:
> kfree(hwinfo);
> }
>
>


2016-09-03 16:53:09

by Kalle Valo

[permalink] [raw]
Subject: Re: rtlwifi: rtl8192de: Fix leak in _rtl92de_read_adapter_info()

Christian Engelmayer <[email protected]> wrote:
> In case rtl_get_hwinfo() fails, the function directly returns and leaks the
> already allocated hwinfo memory. Go through the correct exit path.
>
> Signed-off-by: Christian Engelmayer <[email protected]>
> Acked-by: Larry Finger <[email protected]>

Thanks, 1 patch applied to wireless-drivers-next.git:

a0c7858e7479 rtlwifi: rtl8192de: Fix leak in _rtl92de_read_adapter_info()

--
Sent by pwcli
https://patchwork.kernel.org/patch/9272131/