lkml.org 
[lkml]   [2018]   [Apr]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 079/310] ath5k: fix memory leak on buf on failed eeprom read
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Colin Ian King <colin.king@canonical.com>


    [ Upstream commit 8fed6823e06e43ee9cf7c0ffecec2f9111ce6201 ]

    The AR5K_EEPROM_READ macro returns with -EIO if a read error
    occurs causing a memory leak on the allocated buffer buf. Fix
    this by explicitly calling ath5k_hw_nvram_read and exiting on
    the via the freebuf label that performs the necessary free'ing
    of buf when a read error occurs.

    Detected by CoverityScan, CID#1248782 ("Resource Leak")

    Signed-off-by: Colin Ian King <colin.king@canonical.com>
    Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/net/wireless/ath/ath5k/debug.c | 5 ++++-
    1 file changed, 4 insertions(+), 1 deletion(-)

    --- a/drivers/net/wireless/ath/ath5k/debug.c
    +++ b/drivers/net/wireless/ath/ath5k/debug.c
    @@ -939,7 +939,10 @@ static int open_file_eeprom(struct inode
    }

    for (i = 0; i < eesize; ++i) {
    - AR5K_EEPROM_READ(i, val);
    + if (!ath5k_hw_nvram_read(ah, i, &val)) {
    + ret = -EIO;
    + goto freebuf;
    + }
    buf[i] = val;
    }


    \
     
     \ /
      Last update: 2018-04-11 22:03    [W:4.163 / U:0.144 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site