Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp3896501pxj; Mon, 21 Jun 2021 08:55:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzsMMwFdKZBzbDYfP5DYULvJ4jPVq0rVd5hgn45GxjAhIv5QsL3giTn7i3cmQ4nCzOHPQ+g X-Received: by 2002:a02:230d:: with SMTP id u13mr17975731jau.138.1624290910188; Mon, 21 Jun 2021 08:55:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1624290910; cv=none; d=google.com; s=arc-20160816; b=VewGylrsTDM6Q9sgIej9UvDLX2JB1V3RDsrCvdgyrbL3Eh4JyfBPKHVZZ9PdWEhitU +b6dDlZGKP48vjYpQn6vXaq3Gohlo/saiXZEWV1sVO3Cy4BthDGZ3ho8l1K2ZC0GaLkH HdwvSDzs7zxC/QMSYCe0SyoVMaCUH5nEGtb29sz8DUArlXzjzd59lDpgBeF1RILEyeYq QRBIeG0trNI8joDVR1s2DYjwJgltuvvKxxkJE4EAVkrgn5Q5geMbpf4dt5+hHaLTC4RV a7bx5tw/aepEcbXv34sTfJitTgM4qQfoLjvf7LZ4NOiyKVwk/hI4dluNsSG8ka+I4+n0 tluA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:sender:dkim-signature; bh=DSfyzKavfa1LC7yxbCe25ppAb0rRQT6nPAbNd2OwNJg=; b=Y/Hct/la8/Cl36P/Fw5MW2IT1BNs9O+baFpMwlxVeBIJEHvPvlHFtYoVQniDkV84cv wDtj+BWc6niovo22jbfYbxFjGVaLyOdmPJjhpUvfND00WBkkbSL9Mf2BhgPsCSqd7Bmg Fy1VTThK+p/FW1ROj4U4w6HL0Jkg+wCHOV/RUkldtNac3A0jhlttOTIGUluqrc5XS5MQ GNd/ZOyG8yLcsYYqXyzLykds0rGBScRGru+vaWT4ff5lTsm2C2wXwC7M5I0+FJQFynek 4kR3H8ctRlE6kvS4K5OKFDFP1SMY8MVdJpLkgmXZlEVY9bQtYJD+0BEJqM8MzrXMXUkh BliQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=uzSqXhf9; 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 h78si19846068iof.66.2021.06.21.08.54.54; Mon, 21 Jun 2021 08:55:10 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=uzSqXhf9; 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 S230343AbhFUPyX (ORCPT + 99 others); Mon, 21 Jun 2021 11:54:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49542 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230325AbhFUPyV (ORCPT ); Mon, 21 Jun 2021 11:54:21 -0400 Received: from mail-oo1-xc2c.google.com (mail-oo1-xc2c.google.com [IPv6:2607:f8b0:4864:20::c2c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 68F5CC061574; Mon, 21 Jun 2021 08:52:07 -0700 (PDT) Received: by mail-oo1-xc2c.google.com with SMTP id v17-20020a4aa5110000b0290249d63900faso4619467ook.0; Mon, 21 Jun 2021 08:52:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=DSfyzKavfa1LC7yxbCe25ppAb0rRQT6nPAbNd2OwNJg=; b=uzSqXhf94tKd922NNhuvUCE69EkxEw+DD7mN5umpjyyWBDoP+hbLYIWL4oEogIQxNa A8RO8ddUqLCfOPMHkqtdnI6CuJiQ/rPP40Ipol6YBQ4NNPkXL8kvYHd+OqiTjB8bA5Gq rUAN5+OJSfIAlZQDbxEf3FfWYin1DUsh8i8aYpBvT5KCjxAoUfkIeRtQ5uDEebuR5MGU 1pQ06chn5C0NzE/AR7MThFx4cvz4GJd7y6YxYrx8djE+Q0uijxuIxxZDQd437prV6fro Oje/x09tYgsVCNYzvTONRtuw7WFXUfeDA0XP0Y+ZyqgzPcCJOzCeA7LlejpmexL0b8TB oTkg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:cc:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=DSfyzKavfa1LC7yxbCe25ppAb0rRQT6nPAbNd2OwNJg=; b=MP9kR5M9ZCFURSGKrUAuwHV+gKFW+FNJw4YJhdOKgMo+O6s5JoehdJho4x3Ht/yrgR R8gbD7/EYs0D+tnTLgTkxL8gelllQqE+wcuNLMDbqq+A7PhWrkY2Ssao4qaUwD4u+tVi +whpdnuZY7kElusZ2HOmd13ehbo3FJu+1UD1UuqCvmoqtEgU1stNE3k+JYQpKvGwUmij A39DAbavlZLVuAGCiViMEqREgrLU2CV8WH5NnBQ1lgz83V7V/KlhoZgSUSDvXpLYm30w GjbU2CDC7BhtMiwFNixkTJwRsSfWyMCk5wJ4QBTFV9B4Gs1D6w4XW6QQXfigPJXKonPp BlVA== X-Gm-Message-State: AOAM533niSwBb3G/PdhXrDT2QpvTkqsA+R028fwVAlJf6COTEFqZW7/9 P45vxBeB1qNSMBO4zzWl0MaZxM6Htcs= X-Received: by 2002:a4a:e099:: with SMTP id w25mr21488656oos.43.1624290726464; Mon, 21 Jun 2021 08:52:06 -0700 (PDT) Received: from localhost.localdomain (cpe-24-31-245-230.kc.res.rr.com. [24.31.245.230]) by smtp.gmail.com with ESMTPSA id b198sm3671206oii.19.2021.06.21.08.52.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 21 Jun 2021 08:52:06 -0700 (PDT) Sender: Larry Finger Subject: Re: [PATCH v2] rtw88: Fix some memory leaks To: Pkshih , "kvalo@codeaurora.org" Cc: "linux-wireless@vger.kernel.org" , Stable References: <20210620194110.7520-1-Larry.Finger@lwfinger.net> <19c86cb8dbe04b56b76a386b5faeaa89@realtek.com> From: Larry Finger Message-ID: <2c552c7c-bb11-a914-78e8-900d6bae39a9@lwfinger.net> Date: Mon, 21 Jun 2021 10:52:05 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <19c86cb8dbe04b56b76a386b5faeaa89@realtek.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org On 6/21/21 5:40 AM, Pkshih wrote: > > >> -----Original Message----- >> From: Larry Finger [mailto:larry.finger@gmail.com] On Behalf Of Larry Finger >> Sent: Monday, June 21, 2021 3:41 AM >> To: kvalo@codeaurora.org >> Cc: linux-wireless@vger.kernel.org; Larry Finger; Stable >> Subject: [PATCH v2] rtw88: Fix some memory leaks >> >> There are memory leaks of skb's from routines rtw_fw_c2h_cmd_rx_irqsafe() >> and rtw_coex_info_response(), both arising from C2H operations. There are >> no leaks from the buffers sent to mac80211. >> >> Signed-off-by: Larry Finger >> Cc: Stable >> --- >> v2 - add the missinf changelog. >> >> --- >> drivers/net/wireless/realtek/rtw88/coex.c | 4 +++- >> drivers/net/wireless/realtek/rtw88/fw.c | 2 ++ >> 2 files changed, 5 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/wireless/realtek/rtw88/coex.c b/drivers/net/wireless/realtek/rtw88/coex.c >> index cedbf3825848..e81bf5070183 100644 >> --- a/drivers/net/wireless/realtek/rtw88/coex.c >> +++ b/drivers/net/wireless/realtek/rtw88/coex.c >> @@ -591,8 +591,10 @@ void rtw_coex_info_response(struct rtw_dev *rtwdev, struct sk_buff *skb) >> struct rtw_coex *coex = &rtwdev->coex; >> u8 *payload = get_payload_from_coex_resp(skb); >> >> - if (payload[0] != COEX_RESP_ACK_BY_WL_FW) >> + if (payload[0] != COEX_RESP_ACK_BY_WL_FW) { >> + dev_kfree_skb_any(skb); >> return; >> + } >> >> skb_queue_tail(&coex->queue, skb); >> wake_up(&coex->wait); >> diff --git a/drivers/net/wireless/realtek/rtw88/fw.c b/drivers/net/wireless/realtek/rtw88/fw.c >> index 797b08b2a494..43525ad8543f 100644 >> --- a/drivers/net/wireless/realtek/rtw88/fw.c >> +++ b/drivers/net/wireless/realtek/rtw88/fw.c >> @@ -231,9 +231,11 @@ void rtw_fw_c2h_cmd_rx_irqsafe(struct rtw_dev *rtwdev, u32 pkt_offset, >> switch (c2h->id) { >> case C2H_BT_MP_INFO: >> rtw_coex_info_response(rtwdev, skb); >> + dev_kfree_skb_any(skb); > > The rtw_coex_info_response() puts skb into a skb_queue, so we can't free it here. > Instead, we should free it after we dequeue and do thing. > So, we send another patch: > https://lore.kernel.org/linux-wireless/20210621103023.41928-1-pkshih@realtek.com/T/#u > > I hope this isn't confusing you. No, it is not confusing. T=You fixed some leaks the I did not know existed. Kalle: Take P-K's patch and discard mine. Thanks, Larry