From nobody Sun Feb 8 02:26:26 2026 Received: from mvsmtppost28.nm.naver.com (mvsmtppost28.nm.naver.com [61.247.196.240]) (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 DB4B6388848 for ; Wed, 4 Feb 2026 06:55:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=61.247.196.240 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188130; cv=none; b=CKBZ6q5vAjW6OmquD88qjmGYgDMnnLxm6pvcnxng+VVYN2el7GqVT1RDaWh9APT5ORG5E6SQZmqYMl2+sclo1JcZ9k/uc1sPdD5bhe+HtdtP7z5IdELkI8x8dAahhsB1adwu8x9b80vxX0UUpyLYuXr2Y9zDDGzIUisqS/zoD3k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188130; c=relaxed/simple; bh=WXKLIXQF4NkfrC0120lJJNVQ4xU9vbyUmaXr2vzxQ+U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=KnfbV4wbn/4VXCygr4MMSLaqZjfOT9Wfw9CHiQJhacBiZDw93K0a/FE8erjSb3+Upc1v4tUf626PB4WXXWKwGSYTKXnqKnPqaJMYB4MKCMga/uaJr1f73Fr3tbDO8rN39h90MQsfLeTFHuAJjhzszba5OOYOPNOWFAx7RDe337g= 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=Z8j10I7h; arc=none smtp.client-ip=61.247.196.240 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="Z8j10I7h" Received: from cvsendbo005.nm ([10.112.18.54]) by mvsmtppost28.nm.naver.com with ESMTP id leKoY1pBTc2GQvhl+GLzoA for ; Wed, 04 Feb 2026 06:45:20 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770187520; bh=WXKLIXQF4NkfrC0120lJJNVQ4xU9vbyUmaXr2vzxQ+U=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=Z8j10I7hY//96eAN4dTS9Vmf6ZHwtWspgS5eLPEQ/e+qZNGI3Nq0OOcP8DwAIBECS lnFETbjS2mCJTlN+xg99fuRGXMJaMQqvSHQdkNbRhrEBqhKwDxGBje0CS+ZM/xtLj6 5Rw+RcbzV/AE7FGILpzkQ9DM7FyR5KX3rUjoOC9n35E/jcrpaqNnai77szY+VDamel Apfsi0PXMRXOCB5fUj+ouxCJkP1BDROUTONOQPOTo5bGaPtFEO+uFIloHRP8zQKbD1 ulJoPV9NzTquhS+jWMbTXUmeZ5KhLJO3oB/L0GeCoBtuk6BooAJvXLQe2QiiRuQ5gk 1x3lne2jd4BOQ== X-Session-ID: ZdIjQ8OlSlu3NDLj54TOqA X-Works-Send-Opt: M/YXjAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: 9qK9KxgXFqJZ+HmlKxu9+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp001.nm.naver.com with ESMTP id ZdIjQ8OlSlu3NDLj54TOqA for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 06:45:19 -0000 From: Minu Jin To: gregkh@linuxfoundation.org Cc: andy@kernel.org, dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin Subject: [PATCH v5 1/5] staging: rtl8723bs: introduce kmemdup() where applicable Date: Wed, 4 Feb 2026 15:44:50 +0900 Message-ID: <20260204064455.1379342-2-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204064455.1379342-1-s9430939@naver.com> References: <20260204064455.1379342-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 memory allocation followed by memcpy() with kmemdup() to simplify the code and improve readability. Signed-off-by: Minu Jin --- drivers/staging/rtl8723bs/core/rtw_ap.c | 14 ++++---------- drivers/staging/rtl8723bs/core/rtw_mlme.c | 3 +-- drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 3 +-- drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c | 4 +--- drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 3 +-- drivers/staging/rtl8723bs/os_dep/osdep_service.c | 6 ++---- 6 files changed, 10 insertions(+), 23 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8= 723bs/core/rtw_ap.c index 477fe238add4..94f0e439abae 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ap.c +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c @@ -114,11 +114,8 @@ static void update_BCNTIM(struct adapter *padapter) dst_ie =3D pie + offset; } =20 - if (remainder_ielen > 0) { - pbackup_remainder_ie =3D rtw_malloc(remainder_ielen); - if (pbackup_remainder_ie && premainder_ie) - memcpy(pbackup_remainder_ie, premainder_ie, remainder_ielen); - } + if (premainder_ie && remainder_ielen) + pbackup_remainder_ie =3D kmemdup(premainder_ie, remainder_ielen, GFP_ATO= MIC); =20 *dst_ie++ =3D WLAN_EID_TIM; =20 @@ -1440,11 +1437,8 @@ static void update_bcn_wps_ie(struct adapter *padapt= er) =20 remainder_ielen =3D ielen - wps_offset - wps_ielen; =20 - if (remainder_ielen > 0) { - pbackup_remainder_ie =3D rtw_malloc(remainder_ielen); - if (pbackup_remainder_ie) - memcpy(pbackup_remainder_ie, premainder_ie, remainder_ielen); - } + if (premainder_ie && remainder_ielen) + pbackup_remainder_ie =3D kmemdup(premainder_ie, remainder_ielen, GFP_ATO= MIC); =20 wps_ielen =3D (uint)pwps_ie_src[1];/* to get ie data len */ if ((wps_offset + wps_ielen + 2 + remainder_ielen) <=3D MAX_IE_SZ) { diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rt= l8723bs/core/rtw_mlme.c index 8e1e1c97f0c4..2bbf2b17e3ba 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c @@ -1337,10 +1337,9 @@ void rtw_stassoc_event_callback(struct adapter *adap= ter, u8 *pbuf) /* report to upper layer */ spin_lock_bh(&psta->lock); if (psta->passoc_req && psta->assoc_req_len > 0) { - passoc_req =3D rtw_zmalloc(psta->assoc_req_len); + passoc_req =3D kmemdup(psta->passoc_req, psta->assoc_req_len, GFP_ATOM= IC); if (passoc_req) { assoc_req_len =3D psta->assoc_req_len; - memcpy(passoc_req, psta->passoc_req, assoc_req_len); =20 kfree(psta->passoc_req); psta->passoc_req =3D NULL; diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/stagin= g/rtl8723bs/core/rtw_mlme_ext.c index 884fcce50d9c..fb16febec151 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -1333,9 +1333,8 @@ unsigned int OnAssocReq(struct adapter *padapter, uni= on recv_frame *precv_frame) spin_lock_bh(&pstat->lock); kfree(pstat->passoc_req); pstat->assoc_req_len =3D 0; - pstat->passoc_req =3D rtw_zmalloc(pkt_len); + pstat->passoc_req =3D kmemdup(pframe, pkt_len, GFP_ATOMIC); if (pstat->passoc_req) { - memcpy(pstat->passoc_req, pframe, pkt_len); pstat->assoc_req_len =3D pkt_len; } spin_unlock_bh(&pstat->lock); diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c b/drivers/stagi= ng/rtl8723bs/hal/rtl8723bs_recv.c index 399edfbf8ec6..0980fa4718b1 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c @@ -159,12 +159,10 @@ static void rtl8723bs_c2h_packet_handler(struct adapt= er *padapter, if (length =3D=3D 0) return; =20 - tmp =3D rtw_zmalloc(length); + tmp =3D kmemdup(pbuf, length, GFP_ATOMIC); if (!tmp) return; =20 - memcpy(tmp, pbuf, length); - res =3D rtw_c2h_packet_wk_cmd(padapter, tmp, length); =20 if (!res) diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/st= aging/rtl8723bs/os_dep/ioctl_cfg80211.c index 476ab055e53e..3cc3faba8ce2 100644 --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c @@ -1163,11 +1163,10 @@ static int rtw_cfg80211_set_probe_req_wpsp2pie(stru= ct adapter *padapter, char *b pmlmepriv->wps_probe_req_ie =3D NULL; } =20 - pmlmepriv->wps_probe_req_ie =3D rtw_malloc(wps_ielen); + pmlmepriv->wps_probe_req_ie =3D kmemdup(wps_ie, wps_ielen, GFP_KERNEL); if (!pmlmepriv->wps_probe_req_ie) return -EINVAL; =20 - memcpy(pmlmepriv->wps_probe_req_ie, wps_ie, wps_ielen); pmlmepriv->wps_probe_req_ie_len =3D wps_ielen; } } diff --git a/drivers/staging/rtl8723bs/os_dep/osdep_service.c b/drivers/sta= ging/rtl8723bs/os_dep/osdep_service.c index 01ca423faf87..c999071cadde 100644 --- a/drivers/staging/rtl8723bs/os_dep/osdep_service.c +++ b/drivers/staging/rtl8723bs/os_dep/osdep_service.c @@ -129,11 +129,9 @@ void rtw_buf_update(u8 **buf, u32 *buf_len, u8 *src, u= 32 src_len) goto keep_ori; =20 /* duplicate src */ - dup =3D rtw_malloc(src_len); - if (dup) { + dup =3D kmemdup(src, src_len, GFP_ATOMIC); + if (dup) dup_len =3D src_len; - memcpy(dup, src, dup_len); - } =20 keep_ori: ori =3D *buf; --=20 2.43.0 From nobody Sun Feb 8 02:26:26 2026 Received: from cvsmtppost34.nm.naver.com (cvsmtppost34.nm.naver.com [114.111.35.116]) (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 78A7837F8D9 for ; Wed, 4 Feb 2026 06:45:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.111.35.116 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770187530; cv=none; b=A+085/sUjVcc8skJgGQUSzg3YJYB1hOhQW0sKEANb0slOHRXhs2IvNJLvd1sV9YO0fNtepzwM/PCn4cjerMO2OExmdyp3QO6zW48L1h1EvAX4XxnsspJaQby7SdP6s75AnbbOHnX28dY4/byFHcMN39mJvj/iY+ey3ZctjLUXC0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770187530; c=relaxed/simple; bh=7NBnlMM9B5JibxBl+iyEq+Gbv85ndsOYNMzc1yHaOqk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=C6GZrI2f1JT/qT71t/npT794Zpqdqyu91SUy3cqc5UX8APlyU1+NeY3kWhmGdxdAUrXlW4Likn3WgoAgyH4ISVaYgNTKPsMSyjKPA8h2VhASEs0p4v7TF01Y8iQSSmOWqjwZjwcq36wSJ93HezZbU33oYoiXXUC1kvQg0JxFKfM= 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=ZB6dRFjr; arc=none smtp.client-ip=114.111.35.116 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="ZB6dRFjr" Received: from cvsendbo027.nm ([10.112.22.36]) by cvsmtppost34.nm.naver.com with ESMTP id uqM3WRrITuK+neA4sDaoQg for ; Wed, 04 Feb 2026 06:45:21 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770187521; bh=7NBnlMM9B5JibxBl+iyEq+Gbv85ndsOYNMzc1yHaOqk=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=ZB6dRFjrwphRCDqOBPEhW5yNQV+RmccQxCdfA8UezsUeQftTAv5tweYO3/xbOdsD7 BJiUWybJLQVvYpR14mACFAE/oYsKw3nqoWoB2pHYmpPnjr6XkiUKIgXuhj6Idofur8 HGcdVRinZSTqfPknAQ373fHy9WPcnsSNBNecWXDvLPdwSZXhUR+Pf6Nkw0pyygAlet e5F7CudF0A1fIK1n9vQB/K6kbHjV1FFe5rbAhvCQm5USXd7VjKDO1RaI6AC5D/B0dZ gHeqOc9Q7n4AR0VtM3sUGYvlTu6npIjlm7L6TJnbOGILJC9YGe2KhDzOLfadt7mNYp kqH8lNOZTR5lA== X-Session-ID: GKVr8FgyRTCwcPQDifKdtA X-Works-Send-Opt: M/YXjAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: 9wb9KxgXFqJZ+HmwKou9+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp001.nm.naver.com with ESMTP id GKVr8FgyRTCwcPQDifKdtA for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 06:45:21 -0000 From: Minu Jin To: gregkh@linuxfoundation.org Cc: andy@kernel.org, dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin Subject: [PATCH v5 2/5] staging: rtl8723bs: replace rtw_malloc() with kmalloc() Date: Wed, 4 Feb 2026 15:44:51 +0900 Message-ID: <20260204064455.1379342-3-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204064455.1379342-1-s9430939@naver.com> References: <20260204064455.1379342-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. Also, convert error return codes from -1 to -ENOMEM where appropriate. Signed-off-by: Minu Jin 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 fb16febec151..9c385813b70f 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 From nobody Sun Feb 8 02:26:26 2026 Received: from cvsmtppost22.nm.naver.com (cvsmtppost22.nm.naver.com [114.111.35.109]) (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 A3F4D3859CB for ; Wed, 4 Feb 2026 06:45:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.111.35.109 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770187531; cv=none; b=sYZNiYSeDMOyLPup3RVPOzZ5m5bZORmE8X0O349L8Vhs2yXED6wH59/7LXpxgtZFBxLv6+7HCNj2h611Pnuc9jZFJTM6b5Z5l+ZWbt4gLKYOWm5L8+iaVM41QTbHDP03JGuB8bmVu3iMz9i+RsVn9kisX6T8Yyx+tshzL0wwzFA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770187531; c=relaxed/simple; bh=6OJoAk6yp/arcxsLQ87rzPkuB8w7BTFkyuGFM1RiLFc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=UemsqeG62IHFBnyP13xfG0pPG21pBuZ6W7ZcQf4XE061sKxvJdnQ0ivda/QK0QrMNfrPIO6uB3H0diVRzIEjld633ygPBZDYsjBPOfL8HEV4i8Xg4DlZ5j79VlCzPZ4A5RLTuH6c9I+rzmkWl3q/ciwTgw9tx7U2gR2a5aMbWLQ= 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=IfWYfOm/; arc=none smtp.client-ip=114.111.35.109 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="IfWYfOm/" Received: from cvsendbo027.nm ([10.112.22.36]) by cvsmtppost22.nm.naver.com with ESMTP id oLEPpVs-ScCf4xpEmQU2Ng for ; Wed, 04 Feb 2026 06:45:23 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770187523; bh=6OJoAk6yp/arcxsLQ87rzPkuB8w7BTFkyuGFM1RiLFc=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=IfWYfOm/tP0rGvvUQ3q63brfC5RJP4monAdnKQcfKOs2VI7q3lDfk1vH8MtyePvEq ZR3XNKk/BGM99sjRahJpEtkAqlLhefbFBCK4JRvwhGdYrzRKPG19CNUvdR2ECc37Wp faZ+6UjmC/J294nZouLPZmQPVOfAzj/AK0GqXFvLnAnUij5L48TBjGWKp60Pi+kB9k fwgFNsTBml5FE6sWc2vKByRVsS29J6ZDr+M5W3nvoGou5Mb1CwD291HMnGMxjYoij7 IJVpkypDHXj5lsO0iaGkHSwc3nFdGsuvSgJ9tTN9f3Atiu7hwjuXI2rIEqtfWbtyXt xOeqbc8+AhgmA== X-Session-ID: xHBFZGPmTDiVtOVrZhAPSw X-Works-Send-Opt: M/YXjAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: 9wn9KxgXFqJZ+HmZKou9+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp001.nm.naver.com with ESMTP id xHBFZGPmTDiVtOVrZhAPSw for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 06:45:22 -0000 From: Minu Jin To: gregkh@linuxfoundation.org Cc: andy@kernel.org, dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin Subject: [PATCH v5 3/5] staging: rtl8723bs: replace rtw_zmalloc() with kzalloc() Date: Wed, 4 Feb 2026 15:44:52 +0900 Message-ID: <20260204064455.1379342-4-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204064455.1379342-1-s9430939@naver.com> References: <20260204064455.1379342-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_zmalloc() with standard kzalloc(). Use kzalloc() for rtw_malloc() calls that were followed by manual zero initialization. Additionally, use array_size() and size_add() to prevent potential integer overflows during allocation size calculation. Signed-off-by: Minu Jin Reviewed-by: Andy Shevchenko --- drivers/staging/rtl8723bs/core/rtw_ap.c | 8 +- drivers/staging/rtl8723bs/core/rtw_cmd.c | 81 +++++++++---------- drivers/staging/rtl8723bs/core/rtw_mlme.c | 10 +-- drivers/staging/rtl8723bs/core/rtw_mlme_ext.c | 36 ++++----- drivers/staging/rtl8723bs/core/rtw_recv.c | 2 +- drivers/staging/rtl8723bs/core/rtw_security.c | 3 +- .../staging/rtl8723bs/core/rtw_wlan_util.c | 2 +- drivers/staging/rtl8723bs/core/rtw_xmit.c | 8 +- .../staging/rtl8723bs/hal/rtl8723bs_recv.c | 2 +- drivers/staging/rtl8723bs/hal/sdio_ops.c | 2 +- .../staging/rtl8723bs/os_dep/ioctl_cfg80211.c | 24 +++--- drivers/staging/rtl8723bs/os_dep/os_intfs.c | 2 +- .../staging/rtl8723bs/os_dep/osdep_service.c | 9 +-- drivers/staging/rtl8723bs/os_dep/xmit_linux.c | 2 +- 14 files changed, 89 insertions(+), 102 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_ap.c b/drivers/staging/rtl8= 723bs/core/rtw_ap.c index 94f0e439abae..9feba54181e6 100644 --- a/drivers/staging/rtl8723bs/core/rtw_ap.c +++ b/drivers/staging/rtl8723bs/core/rtw_ap.c @@ -1227,13 +1227,13 @@ u8 rtw_ap_set_pairwise_key(struct adapter *padapter= , struct sta_info *psta) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_KERNEL); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - psetstakey_para =3D rtw_zmalloc(sizeof(struct set_stakey_parm)); + psetstakey_para =3D kzalloc(sizeof(*psetstakey_para), GFP_KERNEL); if (!psetstakey_para) { kfree(ph2c); res =3D _FAIL; @@ -1267,12 +1267,12 @@ static int rtw_ap_set_key(struct adapter *padapter, struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; int res =3D _SUCCESS; =20 - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_KERNEL); if (!pcmd) { res =3D _FAIL; goto exit; } - psetkeyparm =3D rtw_zmalloc(sizeof(struct setkey_parm)); + psetkeyparm =3D kzalloc(sizeof(*psetkeyparm), GFP_KERNEL); if (!psetkeyparm) { kfree(pcmd); res =3D _FAIL; diff --git a/drivers/staging/rtl8723bs/core/rtw_cmd.c b/drivers/staging/rtl= 8723bs/core/rtw_cmd.c index edec2295b52d..b2e7f479f72b 100644 --- a/drivers/staging/rtl8723bs/core/rtw_cmd.c +++ b/drivers/staging/rtl8723bs/core/rtw_cmd.c @@ -171,15 +171,13 @@ int rtw_init_cmd_priv(struct cmd_priv *pcmdpriv) =20 pcmdpriv->cmd_seq =3D 1; =20 - pcmdpriv->cmd_allocated_buf =3D rtw_zmalloc(MAX_CMDSZ + CMDBUFF_ALIGN_SZ); - + pcmdpriv->cmd_allocated_buf =3D kzalloc(MAX_CMDSZ + CMDBUFF_ALIGN_SZ, GFP= _ATOMIC); if (!pcmdpriv->cmd_allocated_buf) return -ENOMEM; =20 pcmdpriv->cmd_buf =3D PTR_ALIGN(pcmdpriv->cmd_allocated_buf, CMDBUFF_ALIG= N_SZ); =20 - pcmdpriv->rsp_allocated_buf =3D rtw_zmalloc(MAX_RSPSZ + 4); - + pcmdpriv->rsp_allocated_buf =3D kzalloc(MAX_RSPSZ + 4, GFP_ATOMIC); if (!pcmdpriv->rsp_allocated_buf) { kfree(pcmdpriv->cmd_allocated_buf); return -ENOMEM; @@ -535,11 +533,11 @@ u8 rtw_sitesurvey_cmd(struct adapter *padapter, stru= ct ndis_802_11_ssid *ssid, if (check_fwstate(pmlmepriv, _FW_LINKED)) rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_SCAN, 1); =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) return _FAIL; =20 - psurveyPara =3D rtw_zmalloc(sizeof(struct sitesurvey_parm)); + psurveyPara =3D kzalloc(sizeof(*psurveyPara), GFP_ATOMIC); if (!psurveyPara) { kfree(ph2c); return _FAIL; @@ -603,7 +601,7 @@ u8 rtw_createbss_cmd(struct adapter *padapter) struct wlan_bssid_ex *pdev_network =3D &padapter->registrypriv.dev_networ= k; u8 res =3D _SUCCESS; =20 - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_ATOMIC); if (!pcmd) { res =3D _FAIL; goto exit; @@ -636,7 +634,7 @@ int rtw_startbss_cmd(struct adapter *padapter, int fla= gs) start_bss_network(padapter); } else { /* need enqueue, prepare cmd_obj and enqueue */ - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_KERNEL); if (!pcmd) { res =3D _FAIL; goto exit; @@ -688,7 +686,7 @@ u8 rtw_joinbss_cmd(struct adapter *padapter, struct wl= an_network *pnetwork) u32 tmp_len; u8 *ptmp =3D NULL; =20 - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_KERNEL); if (!pcmd) { res =3D _FAIL; goto exit; @@ -797,7 +795,7 @@ u8 rtw_disassoc_cmd(struct adapter *padapter, u32 deaut= h_timeout_ms, bool enqueu u8 res =3D _SUCCESS; =20 /* prepare cmd parameter */ - param =3D rtw_zmalloc(sizeof(*param)); + param =3D kzalloc(sizeof(*param), GFP_KERNEL); if (!param) { res =3D _FAIL; goto exit; @@ -806,7 +804,7 @@ u8 rtw_disassoc_cmd(struct adapter *padapter, u32 deaut= h_timeout_ms, bool enqueu =20 if (enqueue) { /* need enqueue, prepare cmd_obj and enqueue */ - cmdobj =3D rtw_zmalloc(sizeof(*cmdobj)); + cmdobj =3D kzalloc(sizeof(*cmdobj), GFP_KERNEL); if (!cmdobj) { res =3D _FAIL; kfree(param); @@ -833,8 +831,7 @@ u8 rtw_setopmode_cmd(struct adapter *padapter, enum nd= is_802_11_network_infrast struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - psetop =3D rtw_zmalloc(sizeof(struct setopmode_parm)); - + psetop =3D kzalloc(sizeof(*psetop), GFP_KERNEL); if (!psetop) { res =3D _FAIL; goto exit; @@ -842,7 +839,7 @@ u8 rtw_setopmode_cmd(struct adapter *padapter, enum nd= is_802_11_network_infrast psetop->mode =3D (u8)networktype; =20 if (enqueue) { - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_KERNEL); if (!ph2c) { kfree(psetop); res =3D _FAIL; @@ -869,7 +866,7 @@ u8 rtw_setstakey_cmd(struct adapter *padapter, struct s= ta_info *sta, u8 unicast_ struct security_priv *psecuritypriv =3D &padapter->securitypriv; u8 res =3D _SUCCESS; =20 - psetstakey_para =3D rtw_zmalloc(sizeof(struct set_stakey_parm)); + psetstakey_para =3D kzalloc(sizeof(*psetstakey_para), GFP_KERNEL); if (!psetstakey_para) { res =3D _FAIL; goto exit; @@ -891,14 +888,14 @@ u8 rtw_setstakey_cmd(struct adapter *padapter, struct= sta_info *sta, u8 unicast_ padapter->securitypriv.busetkipkey =3D true; =20 if (enqueue) { - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_KERNEL); if (!ph2c) { kfree(psetstakey_para); res =3D _FAIL; goto exit; } =20 - psetstakey_rsp =3D rtw_zmalloc(sizeof(struct set_stakey_rsp)); + psetstakey_rsp =3D kzalloc(sizeof(*psetstakey_rsp), GFP_KERNEL); if (!psetstakey_rsp) { kfree(ph2c); kfree(psetstakey_para); @@ -936,20 +933,20 @@ u8 rtw_clearstakey_cmd(struct adapter *padapter, stru= ct sta_info *sta, u8 enqueu rtw_camid_free(padapter, cam_id); } } else { - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_KERNEL); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - psetstakey_para =3D rtw_zmalloc(sizeof(struct set_stakey_parm)); + psetstakey_para =3D kzalloc(sizeof(*psetstakey_para), GFP_KERNEL); if (!psetstakey_para) { kfree(ph2c); res =3D _FAIL; goto exit; } =20 - psetstakey_rsp =3D rtw_zmalloc(sizeof(struct set_stakey_rsp)); + psetstakey_rsp =3D kzalloc(sizeof(*psetstakey_rsp), GFP_KERNEL); if (!psetstakey_rsp) { kfree(ph2c); kfree(psetstakey_para); @@ -979,13 +976,13 @@ u8 rtw_addbareq_cmd(struct adapter *padapter, u8 tid,= u8 *addr) =20 u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - paddbareq_parm =3D rtw_zmalloc(sizeof(struct addBaReq_parm)); + paddbareq_parm =3D kzalloc(sizeof(*paddbareq_parm), GFP_ATOMIC); if (!paddbareq_parm) { kfree(ph2c); res =3D _FAIL; @@ -1012,13 +1009,13 @@ u8 rtw_reset_securitypriv_cmd(struct adapter *padap= ter) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1045,13 +1042,13 @@ u8 rtw_free_assoc_resources_cmd(struct adapter *pad= apter) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1079,13 +1076,13 @@ u8 rtw_dynamic_chk_wk_cmd(struct adapter *padapter) u8 res =3D _SUCCESS; =20 /* only primary padapter does this cmd */ - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1319,13 +1316,13 @@ u8 rtw_lps_ctrl_wk_cmd(struct adapter *padapter, u8= lps_ctrl_type, u8 enqueue) u8 res =3D _SUCCESS; =20 if (enqueue) { - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1360,13 +1357,13 @@ u8 rtw_dm_in_lps_wk_cmd(struct adapter *padapter) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1422,13 +1419,13 @@ u8 rtw_dm_ra_mask_wk_cmd(struct adapter *padapter, = u8 *psta) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1456,13 +1453,13 @@ u8 rtw_ps_cmd(struct adapter *padapter) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ppscmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ppscmd =3D kzalloc(sizeof(*ppscmd), GFP_ATOMIC); if (!ppscmd) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ppscmd); res =3D _FAIL; @@ -1526,13 +1523,13 @@ u8 rtw_chk_hi_queue_cmd(struct adapter *padapter) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1618,13 +1615,13 @@ u8 rtw_c2h_packet_wk_cmd(struct adapter *padapter, = u8 *pbuf, u16 length) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_ATOMIC); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; @@ -1653,13 +1650,13 @@ u8 rtw_c2h_wk_cmd(struct adapter *padapter, u8 *c2h= _evt) struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_KERNEL); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - pdrvextra_cmd_parm =3D rtw_zmalloc(sizeof(struct drvextra_cmd_parm)); + pdrvextra_cmd_parm =3D kzalloc(sizeof(*pdrvextra_cmd_parm), GFP_KERNEL); if (!pdrvextra_cmd_parm) { kfree(ph2c); res =3D _FAIL; diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme.c b/drivers/staging/rt= l8723bs/core/rtw_mlme.c index 2bbf2b17e3ba..a7d7f175cbf3 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme.c @@ -1886,13 +1886,13 @@ signed int rtw_set_auth(struct adapter *adapter, st= ruct security_priv *psecurity struct cmd_priv *pcmdpriv =3D &adapter->cmdpriv; signed int res =3D _SUCCESS; =20 - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_KERNEL); if (!pcmd) { res =3D _FAIL; /* try again */ goto exit; } =20 - psetauthparm =3D rtw_zmalloc(sizeof(struct setauth_parm)); + psetauthparm =3D kzalloc(sizeof(*psetauthparm), GFP_KERNEL); if (!psetauthparm) { kfree(pcmd); res =3D _FAIL; @@ -1923,7 +1923,7 @@ signed int rtw_set_key(struct adapter *adapter, struc= t security_priv *psecurityp struct cmd_priv *pcmdpriv =3D &adapter->cmdpriv; signed int res =3D _SUCCESS; =20 - psetkeyparm =3D rtw_zmalloc(sizeof(struct setkey_parm)); + psetkeyparm =3D kzalloc(sizeof(*psetkeyparm), GFP_KERNEL); if (!psetkeyparm) { res =3D _FAIL; goto exit; @@ -1965,7 +1965,7 @@ signed int rtw_set_key(struct adapter *adapter, struc= t security_priv *psecurityp } =20 if (enqueue) { - pcmd =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd =3D kzalloc(sizeof(*pcmd), GFP_KERNEL); if (!pcmd) { kfree(psetkeyparm); res =3D _FAIL; /* try again */ @@ -2072,7 +2072,7 @@ static void rtw_report_sec_ie(struct adapter *adapter= , u8 authmode, u8 *sec_ie) =20 buff =3D NULL; if (authmode =3D=3D WLAN_EID_VENDOR_SPECIFIC) { - buff =3D rtw_zmalloc(IW_CUSTOM_MAX); + buff =3D kzalloc(IW_CUSTOM_MAX, GFP_ATOMIC); if (!buff) return; =20 diff --git a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c b/drivers/stagin= g/rtl8723bs/core/rtw_mlme_ext.c index 9c385813b70f..9f4c12a01cb2 100644 --- a/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c +++ b/drivers/staging/rtl8723bs/core/rtw_mlme_ext.c @@ -2346,7 +2346,7 @@ void issue_probersp(struct adapter *padapter, unsigne= d char *da, u8 is_valid_p2p u8 *buf; u8 *ies =3D pmgntframe->buf_addr+TXDESC_OFFSET+sizeof(struct ieee80211_= hdr_3addr); =20 - buf =3D rtw_zmalloc(MAX_IE_SZ); + buf =3D kzalloc(MAX_IE_SZ, GFP_ATOMIC); if (!buf) return; =20 @@ -4395,12 +4395,12 @@ void report_survey_event(struct adapter *padapter, = union recv_frame *precv_frame pmlmeext =3D &padapter->mlmeextpriv; pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct survey_event) + sizeof(struct C2HEvent_Header)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -4448,12 +4448,12 @@ void report_surveydone_event(struct adapter *padapt= er) struct mlme_ext_priv *pmlmeext =3D &padapter->mlmeextpriv; struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct surveydone_event) + sizeof(struct C2HEvent_Heade= r)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -4493,12 +4493,12 @@ void report_join_res(struct adapter *padapter, int = res) struct mlme_ext_info *pmlmeinfo =3D &pmlmeext->mlmext_info; struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct joinbss_event) + sizeof(struct C2HEvent_Header)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -4542,12 +4542,12 @@ void report_wmm_edca_update(struct adapter *padapte= r) struct mlme_ext_priv *pmlmeext =3D &padapter->mlmeextpriv; struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct wmm_event) + sizeof(struct C2HEvent_Header)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -4588,12 +4588,12 @@ void report_del_sta_event(struct adapter *padapter,= unsigned char *MacAddr, unsi struct mlme_ext_priv *pmlmeext =3D &padapter->mlmeextpriv; struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct stadel_event) + sizeof(struct C2HEvent_Header)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -4639,12 +4639,12 @@ void report_add_sta_event(struct adapter *padapter,= unsigned char *MacAddr, int struct mlme_ext_priv *pmlmeext =3D &padapter->mlmeextpriv; struct cmd_priv *pcmdpriv =3D &padapter->cmdpriv; =20 - pcmd_obj =3D rtw_zmalloc(sizeof(struct cmd_obj)); + pcmd_obj =3D kzalloc(sizeof(*pcmd_obj), GFP_ATOMIC); if (!pcmd_obj) return; =20 cmdsz =3D (sizeof(struct stassoc_event) + sizeof(struct C2HEvent_Header)); - pevtcmd =3D rtw_zmalloc(cmdsz); + pevtcmd =3D kzalloc(cmdsz, GFP_ATOMIC); if (!pevtcmd) { kfree(pcmd_obj); return; @@ -5093,11 +5093,11 @@ void survey_timer_hdl(struct timer_list *t) pmlmeext->scan_abort =3D false;/* reset */ } =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) return; =20 - psurveyPara =3D rtw_zmalloc(sizeof(struct sitesurvey_parm)); + psurveyPara =3D kzalloc(sizeof(*psurveyPara), GFP_ATOMIC); if (!psurveyPara) { kfree(ph2c); return; @@ -5708,7 +5708,7 @@ u8 chk_bmc_sleepq_cmd(struct adapter *padapter) struct cmd_priv *pcmdpriv =3D &(padapter->cmdpriv); u8 res =3D _SUCCESS; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; @@ -5732,13 +5732,13 @@ u8 set_tx_beacon_cmd(struct adapter *padapter) u8 res =3D _SUCCESS; int len_diff =3D 0; =20 - ph2c =3D rtw_zmalloc(sizeof(struct cmd_obj)); + ph2c =3D kzalloc(sizeof(*ph2c), GFP_ATOMIC); if (!ph2c) { res =3D _FAIL; goto exit; } =20 - ptxBeacon_parm =3D rtw_zmalloc(sizeof(struct Tx_Beacon_param)); + ptxBeacon_parm =3D kzalloc(sizeof(*ptxBeacon_parm), GFP_ATOMIC); if (!ptxBeacon_parm) { kfree(ph2c); res =3D _FAIL; diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c b/drivers/staging/rt= l8723bs/core/rtw_recv.c index 0a8725686721..f599a867eb0b 100644 --- a/drivers/staging/rtl8723bs/core/rtw_recv.c +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c @@ -1425,7 +1425,7 @@ static signed int validate_80211w_mgmt(struct adapter= *adapter, union recv_frame memcpy(pattrib->ta, GetAddr2Ptr(ptr), ETH_ALEN); /* actual management data frame body */ data_len =3D pattrib->pkt_len - pattrib->hdrlen - pattrib->iv_len - pat= trib->icv_len; - mgmt_DATA =3D rtw_zmalloc(data_len); + mgmt_DATA =3D kzalloc(data_len, GFP_ATOMIC); if (!mgmt_DATA) goto validate_80211w_fail; precv_frame =3D decryptor(adapter, precv_frame); diff --git a/drivers/staging/rtl8723bs/core/rtw_security.c b/drivers/stagin= g/rtl8723bs/core/rtw_security.c index 86e54454145a..bd179daab35e 100644 --- a/drivers/staging/rtl8723bs/core/rtw_security.c +++ b/drivers/staging/rtl8723bs/core/rtw_security.c @@ -1316,8 +1316,7 @@ u32 rtw_BIP_verify(struct adapter *padapter, u8 *prec= vframe) __le64 le_tmp64; =20 ori_len =3D pattrib->pkt_len - WLAN_HDR_A3_LEN + BIP_AAD_SIZE; - BIP_AAD =3D rtw_zmalloc(ori_len); - + BIP_AAD =3D kzalloc(ori_len, GFP_KERNEL); if (!BIP_AAD) return _FAIL; =20 diff --git a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c b/drivers/stagi= ng/rtl8723bs/core/rtw_wlan_util.c index 9ab9fb25ced4..d7b0bf237e21 100644 --- a/drivers/staging/rtl8723bs/core/rtw_wlan_util.c +++ b/drivers/staging/rtl8723bs/core/rtw_wlan_util.c @@ -1132,7 +1132,7 @@ int rtw_check_bcn_info(struct adapter *Adapter, u8 *p= frame, u32 packet_len) if (memcmp(cur_network->network.mac_address, pbssid, 6)) return true; =20 - bssid =3D rtw_zmalloc(sizeof(struct wlan_bssid_ex)); + bssid =3D kzalloc(sizeof(*bssid), GFP_KERNEL); if (!bssid) return true; =20 diff --git a/drivers/staging/rtl8723bs/core/rtw_xmit.c b/drivers/staging/rt= l8723bs/core/rtw_xmit.c index 9cead1455bfa..b2237576b58a 100644 --- a/drivers/staging/rtl8723bs/core/rtw_xmit.c +++ b/drivers/staging/rtl8723bs/core/rtw_xmit.c @@ -1170,7 +1170,7 @@ s32 rtw_mgmt_xmitframe_coalesce(struct adapter *padap= ter, struct sk_buff *pkt, s pwlanhdr =3D (struct ieee80211_hdr *)pframe; =20 ori_len =3D BIP_AAD_SIZE + pattrib->pktlen; - tmp_buf =3D BIP_AAD =3D rtw_zmalloc(ori_len); + tmp_buf =3D BIP_AAD =3D kzalloc(ori_len, GFP_ATOMIC); subtype =3D GetFrameSubType(pframe); /* bit(7)~bit(2) */ =20 if (!BIP_AAD) @@ -1674,8 +1674,7 @@ struct xmit_frame *rtw_alloc_xmitframe_once(struct xm= it_priv *pxmitpriv) struct xmit_frame *pxframe =3D NULL; u8 *alloc_addr; =20 - alloc_addr =3D rtw_zmalloc(sizeof(struct xmit_frame) + 4); - + alloc_addr =3D kzalloc(sizeof(*pxframe) + 4, GFP_ATOMIC); if (!alloc_addr) goto exit; =20 @@ -1846,8 +1845,7 @@ s32 rtw_alloc_hwxmits(struct adapter *padapter) =20 pxmitpriv->hwxmits =3D NULL; =20 - pxmitpriv->hwxmits =3D rtw_zmalloc(sizeof(struct hw_xmit) * pxmitpriv->hw= xmit_entry); - + pxmitpriv->hwxmits =3D kcalloc(pxmitpriv->hwxmit_entry, sizeof(*hwxmits),= GFP_ATOMIC); if (!pxmitpriv->hwxmits) return _FAIL; =20 diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c b/drivers/stagi= ng/rtl8723bs/hal/rtl8723bs_recv.c index 0980fa4718b1..4cff14fe5d7a 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c @@ -380,7 +380,7 @@ s32 rtl8723bs_init_recv_priv(struct adapter *padapter) spin_lock_init(&precvpriv->recv_buf_pending_queue.lock); =20 n =3D NR_RECVBUFF * sizeof(struct recv_buf) + 4; - precvpriv->pallocated_recv_buf =3D rtw_zmalloc(n); + precvpriv->pallocated_recv_buf =3D kzalloc(n, GFP_KERNEL); if (!precvpriv->pallocated_recv_buf) { res =3D _FAIL; goto exit; diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl= 8723bs/hal/sdio_ops.c index 707e5879d943..e0a676bc4e88 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_ops.c +++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c @@ -896,7 +896,7 @@ void sd_int_dpc(struct adapter *adapter) if (hal->sdio_hisr & SDIO_HISR_C2HCMD) { struct c2h_evt_hdr_88xx *c2h_evt; =20 - c2h_evt =3D rtw_zmalloc(16); + c2h_evt =3D kzalloc(16, GFP_ATOMIC); if (c2h_evt) { if (c2h_evt_read_88xx(adapter, (u8 *)c2h_evt) =3D=3D _SUCCESS) { if (c2h_id_filter_ccx_8723b((u8 *)c2h_evt)) { diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c b/drivers/st= aging/rtl8723bs/os_dep/ioctl_cfg80211.c index 3cc3faba8ce2..343221e5e7f5 100644 --- a/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c @@ -111,6 +111,7 @@ static struct ieee80211_supported_band *rtw_spt_band_al= loc( { struct ieee80211_supported_band *spt_band =3D NULL; int n_channels, n_bitrates; + size_t alloc_sz; =20 if (band =3D=3D NL80211_BAND_2GHZ) { n_channels =3D RTW_2G_CHANNELS_NUM; @@ -119,9 +120,10 @@ static struct ieee80211_supported_band *rtw_spt_band_a= lloc( goto exit; } =20 - spt_band =3D rtw_zmalloc(sizeof(struct ieee80211_supported_band) + - sizeof(struct ieee80211_channel) * n_channels + - sizeof(struct ieee80211_rate) * n_bitrates); + alloc_sz =3D sizeof(*spt_band); + alloc_sz =3D size_add(alloc_sz, array_size(n_channels, sizeof(struct ieee= 80211_channel))); + alloc_sz =3D size_add(alloc_sz, array_size(n_bitrates, sizeof(struct ieee= 80211_rate))); + spt_band =3D kzalloc(alloc_sz, GFP_KERNEL); if (!spt_band) goto exit; =20 @@ -841,12 +843,10 @@ static int cfg80211_rtw_add_key(struct wiphy *wiphy, = struct net_device *ndev, struct mlme_priv *pmlmepriv =3D &padapter->mlmepriv; =20 param_len =3D sizeof(struct ieee_param) + params->key_len; - param =3D rtw_malloc(param_len); + param =3D kzalloc(param_len, GFP_KERNEL); if (!param) return -1; =20 - memset(param, 0, param_len); - param->cmd =3D IEEE_CMD_SET_ENCRYPTION; eth_broadcast_addr(param->sta_addr); =20 @@ -1430,7 +1430,7 @@ static int rtw_cfg80211_set_wpa_ie(struct adapter *pa= dapter, u8 *pie, size_t iel goto exit; } =20 - buf =3D rtw_zmalloc(ielen); + buf =3D kzalloc(ielen, GFP_KERNEL); if (!buf) { ret =3D -ENOMEM; goto exit; @@ -1714,14 +1714,12 @@ static int cfg80211_rtw_connect(struct wiphy *wiphy= , struct net_device *ndev, wep_key_len =3D wep_key_len <=3D 5 ? 5 : 13; wep_total_len =3D wep_key_len + offsetof(struct ndis_802_11_wep, key_material); - pwep =3D rtw_malloc(wep_total_len); + pwep =3D kzalloc(wep_total_len, GFP_KERNEL); if (!pwep) { ret =3D -ENOMEM; goto exit; } =20 - memset(pwep, 0, wep_total_len); - pwep->key_length =3D wep_key_len; pwep->length =3D wep_total_len; =20 @@ -2147,7 +2145,7 @@ static int rtw_cfg80211_add_monitor_if(struct adapter= *padapter, char *name, str pnpi->sizeof_priv =3D sizeof(struct adapter); =20 /* wdev */ - mon_wdev =3D rtw_zmalloc(sizeof(struct wireless_dev)); + mon_wdev =3D kzalloc(sizeof(*mon_wdev), GFP_KERNEL); if (!mon_wdev) { ret =3D -ENOMEM; goto out; @@ -2257,7 +2255,7 @@ static int rtw_add_beacon(struct adapter *adapter, co= nst u8 *head, size_t head_l if (head_len < 24) return -EINVAL; =20 - pbuf =3D rtw_zmalloc(head_len + tail_len); + pbuf =3D kzalloc(head_len + tail_len, GFP_KERNEL); if (!pbuf) return -ENOMEM; =20 @@ -2728,7 +2726,7 @@ int rtw_wdev_alloc(struct adapter *padapter, struct d= evice *dev) goto free_wiphy; =20 /* wdev */ - wdev =3D rtw_zmalloc(sizeof(struct wireless_dev)); + wdev =3D kzalloc(sizeof(*wdev), GFP_KERNEL); if (!wdev) { ret =3D -ENOMEM; goto unregister_wiphy; diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/= rtl8723bs/os_dep/os_intfs.c index f7f23d1b1709..832e2aa9bcd9 100644 --- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c +++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c @@ -556,7 +556,7 @@ struct dvobj_priv *devobj_init(void) { struct dvobj_priv *pdvobj =3D NULL; =20 - pdvobj =3D rtw_zmalloc(sizeof(*pdvobj)); + pdvobj =3D kzalloc(sizeof(*pdvobj), GFP_KERNEL); if (!pdvobj) return NULL; =20 diff --git a/drivers/staging/rtl8723bs/os_dep/osdep_service.c b/drivers/sta= ging/rtl8723bs/os_dep/osdep_service.c index c999071cadde..5ff4ed73428a 100644 --- a/drivers/staging/rtl8723bs/os_dep/osdep_service.c +++ b/drivers/staging/rtl8723bs/os_dep/osdep_service.c @@ -218,13 +218,8 @@ struct rtw_cbuf *rtw_cbuf_alloc(u32 size) { struct rtw_cbuf *cbuf; =20 - cbuf =3D rtw_malloc(struct_size(cbuf, bufs, size)); - - if (cbuf) { - cbuf->write =3D 0; - cbuf->read =3D 0; - cbuf->size =3D size; - } + cbuf =3D kzalloc(struct_size(cbuf, bufs, size), GFP_KERNEL); + cbuf->size =3D size; =20 return cbuf; } diff --git a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c b/drivers/stagin= g/rtl8723bs/os_dep/xmit_linux.c index 944b9c724b32..20d2926a4480 100644 --- a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c @@ -46,7 +46,7 @@ signed int rtw_endofpktfile(struct pkt_file *pfile) int rtw_os_xmit_resource_alloc(struct adapter *padapter, struct xmit_buf *= pxmitbuf, u32 alloc_sz, u8 flag) { if (alloc_sz > 0) { - pxmitbuf->pallocated_buf =3D rtw_zmalloc(alloc_sz); + pxmitbuf->pallocated_buf =3D kzalloc(alloc_sz, GFP_KERNEL); if (!pxmitbuf->pallocated_buf) return _FAIL; =20 --=20 2.43.0 From nobody Sun Feb 8 02:26:26 2026 Received: from cvsmtppost28.nm.naver.com (cvsmtppost28.nm.naver.com [114.111.35.239]) (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 C620C38947C for ; Wed, 4 Feb 2026 06:55:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.111.35.239 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188133; cv=none; b=N0NMuUUPOLwCOr9ebhax8NbmFzydMRwxWhWpBs/ZBzt/OBhOy2j4cN0DbnPbU0xGEVBmjYta4RIMzneuNAwAUHTQMsuJyY3JDUFuAlOINJhuxM31wBehchfaAksxGeMqZ5djeSIicwTZCdeUEbl1Jaikp6SEIKkBr3tQQpKMf5E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188133; c=relaxed/simple; bh=JcSGWsUh0YIxrhrgeG8v/bSeyrFOJs84EuIQeJgb7AE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=rMpoKe+I/mSg8hDQOVQl1M/IKwt/u7WJ4FrEd8x7VU0Nj+pjuf+lJs+AIHVWHxb4HvVZq/bFjWiHJ3uaQqhd4NjgfPLABvH/AZMVF6VR9oOoemTH2qmHUvHVS1V/sLStCIbrmj3/PluOAtumUweJGp8C1UgZvKjw9sPEjwzbMJc= 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=JYqw84iD; arc=none smtp.client-ip=114.111.35.239 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="JYqw84iD" Received: from cvsendbo013.nm ([10.112.18.56]) by cvsmtppost28.nm.naver.com with ESMTP id r4oc2dmARxiDnFwZOcl+OQ for ; Wed, 04 Feb 2026 06:45:24 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770187524; bh=JcSGWsUh0YIxrhrgeG8v/bSeyrFOJs84EuIQeJgb7AE=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=JYqw84iD3xPIVKGGUO4lG1dWYvymtBqB0e/6CdjkV95RfGLASr7hBGtSdmW+Y159s Gx9YkacxrqE4ONCyYOV3gZTzP6r+LyJ7fGWUIosoXbGE1/DLDfUsOm5sjO0+QzYQUK nuY6rwLltRLB557vGKP8p5aMatCaPvk8nbDgsw3+A7rcgAreEHqqkmOa/bXQ4HD83Z T6ZXA1S3E+5iYCN5rL69ImjX11s6GE8q8jtukgV65tNkbZzI1w4jl6VXZspletUVDx V3jvEWJSV3DTAsDtNDvASzch9ebImWhN+197KUzm8c3YVresQP1DQZTF4Olx0JCtw9 OsRAh/IhvShmg== X-Session-ID: MjCixTokTR6cx7fexL-diA X-Works-Send-Opt: M/YXjAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: 9wY9KxgXFqJZ+HmqKou9+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp001.nm.naver.com with ESMTP id MjCixTokTR6cx7fexL-diA for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 06:45:23 -0000 From: Minu Jin To: gregkh@linuxfoundation.org Cc: andy@kernel.org, dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin Subject: [PATCH v5 4/5] staging: rtl8723bs: use standard skb allocation APIs Date: Wed, 4 Feb 2026 15:44:53 +0900 Message-ID: <20260204064455.1379342-5-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204064455.1379342-1-s9430939@naver.com> References: <20260204064455.1379342-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 custom wrappers rtw_skb_alloc() and rtw_skb_copy() with standard kernel APIs __dev_alloc_skb() and skb_copy(). Signed-off-by: Minu Jin Reviewed-by: Andy Shevchenko --- drivers/staging/rtl8723bs/core/rtw_recv.c | 2 +- drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c | 5 ++--- drivers/staging/rtl8723bs/hal/sdio_ops.c | 2 +- drivers/staging/rtl8723bs/os_dep/xmit_linux.c | 3 +-- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_recv.c b/drivers/staging/rt= l8723bs/core/rtw_recv.c index f599a867eb0b..9016465d5140 100644 --- a/drivers/staging/rtl8723bs/core/rtw_recv.c +++ b/drivers/staging/rtl8723bs/core/rtw_recv.c @@ -1630,7 +1630,7 @@ static struct sk_buff *rtw_alloc_msdu_pkt(union recv_= frame *prframe, u16 nSubfra =20 pattrib =3D &prframe->u.hdr.attrib; =20 - sub_skb =3D rtw_skb_alloc(nSubframe_Length + 12); + sub_skb =3D __dev_alloc_skb(nSubframe_Length + 12, GFP_ATOMIC); if (!sub_skb) return NULL; =20 diff --git a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c b/drivers/stagi= ng/rtl8723bs/hal/rtl8723bs_recv.c index 4cff14fe5d7a..5faac9f28b02 100644 --- a/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c +++ b/drivers/staging/rtl8723bs/hal/rtl8723bs_recv.c @@ -290,7 +290,7 @@ static void rtl8723bs_recv_tasklet(struct tasklet_struc= t *t) alloc_sz +=3D 14; } =20 - pkt_copy =3D rtw_skb_alloc(alloc_sz); + pkt_copy =3D __dev_alloc_skb(alloc_sz, GFP_ATOMIC); if (!pkt_copy) { rtw_free_recvframe(precvframe, &precvpriv->free_recv_queue); break; @@ -397,8 +397,7 @@ s32 rtl8723bs_init_recv_priv(struct adapter *padapter) SIZE_PTR tmpaddr =3D 0; SIZE_PTR alignment =3D 0; =20 - precvbuf->pskb =3D rtw_skb_alloc(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ); - + precvbuf->pskb =3D __dev_alloc_skb(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ, = GFP_ATOMIC); if (precvbuf->pskb) { precvbuf->pskb->dev =3D padapter->pnetdev; =20 diff --git a/drivers/staging/rtl8723bs/hal/sdio_ops.c b/drivers/staging/rtl= 8723bs/hal/sdio_ops.c index e0a676bc4e88..c9cb20c61a2b 100644 --- a/drivers/staging/rtl8723bs/hal/sdio_ops.c +++ b/drivers/staging/rtl8723bs/hal/sdio_ops.c @@ -810,7 +810,7 @@ static struct recv_buf *sd_recv_rxfifo(struct adapter *= adapter, u32 size) SIZE_PTR tmpaddr =3D 0; SIZE_PTR alignment =3D 0; =20 - recvbuf->pskb =3D rtw_skb_alloc(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ); + recvbuf->pskb =3D __dev_alloc_skb(MAX_RECVBUF_SZ + RECVBUFF_ALIGN_SZ, GF= P_ATOMIC); if (!recvbuf->pskb) return NULL; =20 diff --git a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c b/drivers/stagin= g/rtl8723bs/os_dep/xmit_linux.c index 20d2926a4480..f394b2ea6116 100644 --- a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c @@ -159,8 +159,7 @@ static int rtw_mlcst2unicst(struct adapter *padapter, s= truct sk_buff *skb) !memcmp(psta->hwaddr, bc_addr, 6)) continue; =20 - newskb =3D rtw_skb_copy(skb); - + newskb =3D skb_copy(skb, GFP_ATOMIC); if (newskb) { memcpy(newskb->data, psta->hwaddr, 6); res =3D rtw_xmit(padapter, &newskb); --=20 2.43.0 From nobody Sun Feb 8 02:26:26 2026 Received: from cvsmtppost11.nm.naver.com (cvsmtppost11.nm.naver.com [114.111.35.156]) (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 ADF0E389E03 for ; Wed, 4 Feb 2026 06:55:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.111.35.156 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188135; cv=none; b=UpbuZQkUoave8C9NC5KKt61O6Y94CsXefh1OtB2/Uk10y2l45ynkRVR5uNKbTEmPidSPjmwc+WaVNdB64/bU2cSCvIl1mV5CliaS5M5mo1YBROjAyj/HCgc7Z7UDy1a6PzdH4Puls9IMGB1yxWbeYsccrmfTN333XJGyDw2a2sA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770188135; c=relaxed/simple; bh=J93l7Sg0K0MUOx+zYJG7dOMsAa0nvX8MI/vf92Ne9Z0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jSQlFedSWFjYUF1z/omTnCgdljlMSfOL/7VXrTC4BHoXDrcjhe1NAxpoxJxaQUEzmAu2XqbVxC9NSwPro2bOAbL38/gkE+ke67p9IKE/l44jZe1thjLewbol2SL++f8YTTkzqpMWqiCOhxjUxGM97qRZO0zCQzAUel34gHPcIQ8= 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=G3l3IVei; arc=none smtp.client-ip=114.111.35.156 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="G3l3IVei" Received: from cvsendbo035.nm ([10.112.22.38]) by cvsmtppost11.nm.naver.com with ESMTP id p3WMrHoEQp+7ZOfFPQG2UA for ; Wed, 04 Feb 2026 06:45:25 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=naver.com; s=s20171208; t=1770187525; bh=J93l7Sg0K0MUOx+zYJG7dOMsAa0nvX8MI/vf92Ne9Z0=; h=From:To:Subject:Date:Message-ID:From:Subject:Feedback-ID: X-Works-Security; b=G3l3IVeiRmolADMLb0byyzSm/UgWn66YlRUz41BmfyDZsdotSiHjPTGhoN/ogpScq ATxabx7e7bPlaJhSTkrAIujPxD+KrmmvGbM7wVP/j1DESkJJ+3bp4DKx7pt5oZVi22 fV+PrXFjGqoOFWWbw3/GrF3LaGy7hXZVZYZ/2JZAnbTlGdC0FxwknDhcAB58PAXRMH pi8KyOvUfem6oMyiz3/HmjatptwDyEw6+KeIgTDe1W6PnFynQ4rVpQslEf1J7utkPS OoWGoof455v7MFCZEtgGD8mUyC44396t4m8PtNS4l6wkJv4BNfHx68QJyWGGo42KXa 4xwxlndFZddwg== X-Session-ID: Qozn+1tjSzS05u3e4gwztQ X-Works-Send-Opt: M/YXjAJYjHmwKo2qKqJYFquqFNwkx0eFjAJYKg== X-Works-Smtp-Source: 9Zb9KxgXFqJZ+Hm9Kou9+6E= Received: from JMW-Ubuntu.. ([14.38.141.199]) by cvnsmtp001.nm.naver.com with ESMTP id Qozn+1tjSzS05u3e4gwztQ for (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Wed, 04 Feb 2026 06:45:25 -0000 From: Minu Jin To: gregkh@linuxfoundation.org Cc: andy@kernel.org, dan.carpenter@linaro.org, trohan2000@gmail.com, straube.linux@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Minu Jin Subject: [PATCH v5 5/5] staging: rtl8723bs: remove unused allocation wrapper functions Date: Wed, 4 Feb 2026 15:44:54 +0900 Message-ID: <20260204064455.1379342-6-s9430939@naver.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260204064455.1379342-1-s9430939@naver.com> References: <20260204064455.1379342-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" Remove the custom memory allocation wrapper functions and macros from osdep_service.c and osdep_service.h as they are no longer used. Signed-off-by: Minu Jin Reviewed-by: Andy Shevchenko --- .../staging/rtl8723bs/include/osdep_service.h | 11 -------- .../staging/rtl8723bs/os_dep/osdep_service.c | 25 ------------------- 2 files changed, 36 deletions(-) diff --git a/drivers/staging/rtl8723bs/include/osdep_service.h b/drivers/st= aging/rtl8723bs/include/osdep_service.h index 6458ff95ff9d..955e8678dc26 100644 --- a/drivers/staging/rtl8723bs/include/osdep_service.h +++ b/drivers/staging/rtl8723bs/include/osdep_service.h @@ -54,21 +54,10 @@ =20 extern int RTW_STATUS_CODE(int error_code); =20 -void *_rtw_zmalloc(u32 sz); -void *_rtw_malloc(u32 sz); void _kfree(u8 *pbuf, u32 sz); =20 -struct sk_buff *_rtw_skb_alloc(u32 sz); -struct sk_buff *_rtw_skb_copy(const struct sk_buff *skb); int _rtw_netif_rx(struct net_device *ndev, struct sk_buff *skb); =20 -#define rtw_malloc(sz) _rtw_malloc((sz)) -#define rtw_zmalloc(sz) _rtw_zmalloc((sz)) - -#define rtw_skb_alloc(size) _rtw_skb_alloc((size)) -#define rtw_skb_alloc_f(size, mstat_f) _rtw_skb_alloc((size)) -#define rtw_skb_copy(skb) _rtw_skb_copy((skb)) -#define rtw_skb_copy_f(skb, mstat_f) _rtw_skb_copy((skb)) #define rtw_netif_rx(ndev, skb) _rtw_netif_rx(ndev, skb) =20 extern void _rtw_init_queue(struct __queue *pqueue); diff --git a/drivers/staging/rtl8723bs/os_dep/osdep_service.c b/drivers/sta= ging/rtl8723bs/os_dep/osdep_service.c index 5ff4ed73428a..2a8fdafefcd9 100644 --- a/drivers/staging/rtl8723bs/os_dep/osdep_service.c +++ b/drivers/staging/rtl8723bs/os_dep/osdep_service.c @@ -14,31 +14,6 @@ inline int RTW_STATUS_CODE(int error_code) return _FAIL; } =20 -void *_rtw_malloc(u32 sz) -{ - return kmalloc(sz, in_interrupt() ? GFP_ATOMIC : GFP_KERNEL); -} - -void *_rtw_zmalloc(u32 sz) -{ - void *pbuf =3D _rtw_malloc(sz); - - if (pbuf) - memset(pbuf, 0, sz); - - return pbuf; -} - -inline struct sk_buff *_rtw_skb_alloc(u32 sz) -{ - return __dev_alloc_skb(sz, in_interrupt() ? GFP_ATOMIC : GFP_KERNEL); -} - -inline struct sk_buff *_rtw_skb_copy(const struct sk_buff *skb) -{ - return skb_copy(skb, in_interrupt() ? GFP_ATOMIC : GFP_KERNEL); -} - inline int _rtw_netif_rx(struct net_device *ndev, struct sk_buff *skb) { skb->dev =3D ndev; --=20 2.43.0