Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp2742345ybz; Mon, 27 Apr 2020 03:45:53 -0700 (PDT) X-Google-Smtp-Source: APiQypLl3fac3DmNdfmbLWXluKmzTOyhaM26gytD8Fn96L0meMauTITr2akcXrbDM5qAzoI+6Qgi X-Received: by 2002:a17:906:5fd2:: with SMTP id k18mr18606645ejv.243.1587984352922; Mon, 27 Apr 2020 03:45:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587984352; cv=none; d=google.com; s=arc-20160816; b=hGFfTXbxzGdZZzklh8vRpYUAAGS5iYuo9Zq/zeIKAKRy7KPSTqKxR8XD8yuAg2ZOas HEi3YVPPOWVVYNf94piZSlHghbE5asN0UMkJ4oxSL0pMYBT3VOTKHCUwGiZxvJUWUKtY blUgAy+2d64s4jiM2kqAisdQWFaQ9HuzIF3zxeJepluPHaGGIgek0Y1RqGWNgqePEBt3 J2AT+wfKnmeTB6tzJ2oHx/v7cktIbbHW3NIX11uCUAWi+3iGugh0pFcpo5KFaa4dyr6L /lmQlIavwczKGlRyKY7D2iAQI5aPi0R9wlloDtD3t73UisyowCMN1/IgTeAG6lX4IWOJ uz4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=tYsOqGq8CVKmDfh04YKl/Yx8SYgP8QLNUJ/vaHsBsZI=; b=DbDy/b/+MWehf7t0E5diqn0OKNtnu0x8bQRnnS1y/enutIs5kMB/W5RQ98gWbTb+h9 iDbmPVWNj9guhwe0oJ4miAqjio0Dz/AGovLwGTdB3nBf1r7aApkMaRYfusSSzqy0wQYw 7efDUkcDVinkiiZJgfbzo342avf4ZDL5Ks1C3SIT+Bmxr/F67tVubcFlJFyDi9YiJfaR De4tYqS3bWnVAFY71WIIrH5GSHFn880/kka6JW3v1x1jPd09oPEZ4b3QLXQ423+kTB0R fTMRtAECS22CC++us2pjkGyEjYhccBzUR8GwIFYwYRnYk76Ph1f0C0iUA85+EJGgbNfS 17EA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u25si7283853edi.574.2020.04.27.03.45.30; Mon, 27 Apr 2020 03:45:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727026AbgD0Kmm (ORCPT + 99 others); Mon, 27 Apr 2020 06:42:42 -0400 Received: from szxga05-in.huawei.com ([45.249.212.191]:3313 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726485AbgD0Kmm (ORCPT ); Mon, 27 Apr 2020 06:42:42 -0400 Received: from DGGEMS409-HUB.china.huawei.com (unknown [172.30.72.60]) by Forcepoint Email with ESMTP id C946FC3326C60500B4D3; Mon, 27 Apr 2020 18:42:39 +0800 (CST) Received: from localhost.localdomain.localdomain (10.175.113.25) by DGGEMS409-HUB.china.huawei.com (10.3.19.209) with Microsoft SMTP Server id 14.3.487.0; Mon, 27 Apr 2020 18:42:28 +0800 From: Wei Yongjun To: Kalle Valo , Wen Gong CC: Wei Yongjun , , , Subject: [PATCH net-next] ath10k: fix possible memory leak in ath10k_bmi_lz_data_large() Date: Mon, 27 Apr 2020 10:43:48 +0000 Message-ID: <20200427104348.13570-1-weiyongjun1@huawei.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7BIT X-Originating-IP: [10.175.113.25] X-CFilter-Loop: Reflected Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org 'cmd' is malloced in ath10k_bmi_lz_data_large() and should be freed before leaving from the error handling cases, otherwise it will cause memory leak. Fixes: d58f466a5dee ("ath10k: add large size for BMI download data for SDIO") Signed-off-by: Wei Yongjun --- drivers/net/wireless/ath/ath10k/bmi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/wireless/ath/ath10k/bmi.c b/drivers/net/wireless/ath/ath10k/bmi.c index ea908107581d..5b6db6e66f65 100644 --- a/drivers/net/wireless/ath/ath10k/bmi.c +++ b/drivers/net/wireless/ath/ath10k/bmi.c @@ -380,6 +380,7 @@ static int ath10k_bmi_lz_data_large(struct ath10k *ar, const void *buffer, u32 l NULL, NULL); if (ret) { ath10k_warn(ar, "unable to write to the device\n"); + kfree(cmd); return ret; }