From nobody Tue Feb 10 04:33:07 2026 Received: from cvsmtppost20.nm.naver.com (cvsmtppost20.nm.naver.com [114.111.35.236]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9267E277CB8 for ; Wed, 4 Feb 2026 13:24:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.111.35.236 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770211446; cv=none; b=C5A0QNWoLBYembhCfp3+pBLUM3MBINvGl/fyosz9SkTWGEZaEp76vtcm3wr5ejYNJ9WArYTO1UgorMKTpkVEVW0J1wtrNDlY6GPs8G3XscAwOkdyonR20nsoltD8glBjYhidLDEtoVrVO/T+J3qizAFcX71PskMfXKQ+GON0bOI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770211446; c=relaxed/simple; bh=bBT9jft8CU3A9rxwflwTWCC3uc6vZzqLaEbd4NHRQ/4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cZJtiDalBu2FHLPwlo5gFqBDzAaqFBHj03mk7bEefWdYVM1PShe3db1UqnxakQKqo8n5xwaX7um/Pp0XP/9vkEYSr387fz6P0xvrdi011zYni+H+QA1OaCFrpE6ANUs/y8hgHRUkPJVwO4a5knJj2Al/MxNoAUuYUNw+nwyjVzU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=naver.com; spf=pass smtp.mailfrom=naver.com; dkim=pass (2048-bit key) header.d=naver.com header.i=@naver.com header.b=Bgs7EyoV; arc=none smtp.client-ip=114.111.35.236 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=naver.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=naver.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=naver.com header.i=@naver.com header.b="Bgs7EyoV" Received: from cvsendbo018.nm ([10.112.20.46]) by cvsmtppost20.nm.naver.com with ESMTP id URW2u63nS9WvumUm+apqNQ for ; Wed, 04 Feb 2026 13:13:57 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770210837; bh=bBT9jft8CU3A9rxwflwTWCC3uc6vZzqLaEbd4NHRQ/4=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=Bgs7EyoVlgWPzaJAL2EuvQnotEtcuIUhal4RcK1Tp5+f6JoR566a2DMgsMKFgymU3 nr0VE5HKPKQeBxo/139vqjfJDpPWlCmg8XWZ5hnTG/H4GJMcwOh9FZrhuAELS2pKhv 4V6IPWpbNXMm6blpXG0AzWCcWKiQZulVe6te9iDg0eurV7zclhKe4dHTkGUaN8UJgl c6WVJqj1WulSITZaQEnTWmPxYA4uJm4PvHgF4+onQFHzmnG9nVXDgf0bVQZ7oVTtQl 5TOslgUuYgOfb+wbqOzgn/G1QuEFSslZ6VOJUZe/QDg2sh+CDTtWzC1NnmJ+cMwgOi 5kNE+3nmApXnA== X-Session-ID: S2bbIcJWSAm0TivgL8UviQ X-Works-Send-Opt: p/Y/jAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: XdbXKxgXFqJZ+HmrKqt/+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp008.nm.naver.com with ESMTP id S2bbIcJWSAm0TivgL8UviQ for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 13:13:56 -0000 From: Minu Jin To: gregkh@linuxfoundation.org, andy@kernel.org Cc: dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin , Andy Shevchenko Subject: [PATCH v6 2/5] staging: rtl8723bs: replace rtw_malloc() with kmalloc() Date: Wed, 4 Feb 2026 22:13:44 +0900 Message-ID: <20260204131347.3515949-3-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204131347.3515949-1-s9430939@naver.com> References: <20260204131347.3515949-1-s9430939@naver.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace the wrapper function rtw_malloc() with standard kmalloc(). Call sites were reviewed to use appropriate GFP flags (GFP_KERNEL or GFP_ATOMIC) based on the execution context. About GFP Flags: - GFP_ATOMIC is used for allocations in atomic contexts such as spinlock-protected sections, tasklets, and timer handlers. - GFP_KERNEL is used for process contexts where sleeping is allowed. Also, convert error return codes from -1 to -ENOMEM where appropriate. Signed-off-by: Minu Jin Reviewd-by: Andy Shevchenko Reviewed-by: Andy Shevchenko --- drivers/staging/rtl8723bs/core/rtw_cmd.c | 2 +- drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 2 +- .../staging/rtl8723bs/hal/rtl8723b_hal_init.c | 4 ++-- drivers/staging/rtl8723bs/hal/sdio_ops.c | 24 +++++++++---------- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl= 8723bs/core/rtw_cmd.c index 27da987d881f..edec2295b52d 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -1695,7 +1695,7 @@ static void c2h_wk_callback(struct work_struct *work) /* This C2H event is read, clear it */ c2h_evt_clear(adapter); } else { - c2h_evt =3D rtw_malloc(16); + c2h_evt =3D kmalloc(16, GFP_ATOMIC); if (c2h_evt) { /* This C2H event is not read, read & clear now */ if (c2h_evt_read_88xx(adapter, c2h_evt) !=3D _SUCCESS) { diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/stagin= g/rtl8723bs/core/rtw_mlme_ext.c index c7c63009f779..46fd4be21e02 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -589,7 +589,7 @@ unsigned int OnBeacon(struct adapter *padapter, union r= ecv_frame *precv_frame) if (!memcmp(GetAddr3Ptr(pframe), get_my_bssid(&pmlmeinfo->network), ETH_A= LEN)) { if (pmlmeinfo->state & WIFI_FW_AUTH_NULL) { /* we should update current network before auth, or some IE is wrong */ - pbss =3D rtw_malloc(sizeof(struct wlan_bssid_ex)); + pbss =3D kmalloc(sizeof(*pbss), GFP_ATOMIC); if (pbss) { if (collect_bss_info(padapter, precv_frame, pbss) =3D=3D _SUCCESS) { update_network(&(pmlmepriv->cur_network.network), pbss, padapter, tru= e); diff --git a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c b/drivers/st= aging/rtl8723bs/hal/rtl8723b_hal_init.c index 054e2c2eab02..144094eeec30 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723b_hal_init.c @@ -642,7 +642,7 @@ static void hal_ReadEFuse_WiFi( if ((_offset + _size_byte) > EFUSE_MAX_MAP_LEN) return; =20 - efuseTbl =3D rtw_malloc(EFUSE_MAX_MAP_LEN); + efuseTbl =3D kmalloc(EFUSE_MAX_MAP_LEN, GFP_ATOMIC); if (!efuseTbl) return; =20 @@ -730,7 +730,7 @@ static void hal_ReadEFuse_BT( if ((_offset + _size_byte) > EFUSE_BT_MAP_LEN) return; =20 - efuseTbl =3D rtw_malloc(EFUSE_BT_MAP_LEN); + efuseTbl =3D kmalloc(EFUSE_BT_MAP_LEN, GFP_ATOMIC); if (!efuseTbl) return; =20 diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl= 8723bs/hal/sdio_ops.c index 454f2fabc116..707e5879d943 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_ops.c +++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c @@ -181,7 +181,7 @@ static u32 sdio_read32(struct intf_hdl *intfhdl, u32 ad= dr) } else { u8 *tmpbuf; =20 - tmpbuf =3D rtw_malloc(8); + tmpbuf =3D kmalloc(8, GFP_ATOMIC); if (!tmpbuf) return SDIO_ERR_VAL32; =20 @@ -228,9 +228,9 @@ static s32 sdio_readN(struct intf_hdl *intfhdl, u32 add= r, u32 cnt, u8 *buf) =20 ftaddr &=3D ~(u16)0x3; n =3D cnt + shift; - tmpbuf =3D rtw_malloc(n); + tmpbuf =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) - return -1; + return -ENOMEM; =20 err =3D sd_read(intfhdl, ftaddr, n, tmpbuf); if (!err) @@ -331,9 +331,9 @@ static s32 sdio_writeN(struct intf_hdl *intfhdl, u32 ad= dr, u32 cnt, u8 *buf) =20 ftaddr &=3D ~(u16)0x3; n =3D cnt + shift; - tmpbuf =3D rtw_malloc(n); + tmpbuf =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) - return -1; + return -ENOMEM; err =3D sd_read(intfhdl, ftaddr, 4, tmpbuf); if (err) { kfree(tmpbuf); @@ -503,9 +503,9 @@ static s32 _sdio_local_read( return _sd_cmd52_read(intfhdl, addr, cnt, buf); =20 n =3D round_up(cnt, 4); - tmpbuf =3D rtw_malloc(n); + tmpbuf =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) - return -1; + return -ENOMEM; =20 err =3D _sd_read(intfhdl, addr, n, tmpbuf); if (!err) @@ -544,9 +544,9 @@ s32 sdio_local_read( return sd_cmd52_read(intfhdl, addr, cnt, buf); =20 n =3D round_up(cnt, 4); - tmpbuf =3D rtw_malloc(n); + tmpbuf =3D kmalloc(n, GFP_ATOMIC); if (!tmpbuf) - return -1; + return -ENOMEM; =20 err =3D sd_read(intfhdl, addr, n, tmpbuf); if (!err) @@ -583,9 +583,9 @@ s32 sdio_local_write( ) return sd_cmd52_write(intfhdl, addr, cnt, buf); =20 - tmpbuf =3D rtw_malloc(cnt); + tmpbuf =3D kmalloc(cnt, GFP_ATOMIC); if (!tmpbuf) - return -1; + return -ENOMEM; =20 memcpy(tmpbuf, buf, cnt); =20 @@ -883,7 +883,7 @@ void sd_int_dpc(struct adapter *adapter) u8 *status; u32 addr; =20 - status =3D rtw_malloc(4); + status =3D kmalloc(4, GFP_ATOMIC); if (status) { addr =3D REG_TXDMA_STATUS; hal_sdio_get_cmd_addr_8723b(adapter, WLAN_IOREG_DEVICE_ID, addr, &addr); --=20 2.43.0