From nobody Sun Jun 14 18:59:20 2026 Received: from mail-dy1-f195.google.com (mail-dy1-f195.google.com [74.125.82.195]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 84C42243951 for ; Sun, 5 Apr 2026 11:58:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775390283; cv=none; b=TOpPAdOqSoawYikRhrp7QI2+f9k99+0w4OZubt0hu6WEwadJj79oUlBlcQQSUsbmIG1gN9TyW11HvOhIIyXt4hUxEqGrOCFC98w+wBgE2yMk89/2NdYox/d3uF50WtrbiQgsQioJu6gUbtcrHC5VZTLQBv3lUWNG3hfW0RKm+uM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775390283; c=relaxed/simple; bh=7kVM56TjFg0aYZuB/WKeKloKE3MycP9NtAXUtbSizuM=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=MBrFWRx8HWOKoOa8wUQuVOtNvvyYmmY24wVcj/lAXV83L9ycS0uFATJLjNsLmTeKKCsL5gvNs1VKaS3zR5VVN0Yk9kaDm5P+CHo0ytQRABQPdnIAnkHIAh9g34VAlnn2RarRuGZ+NWYoJ3qpQwHRiWUXGSvunqJ/kjzf2y80IV8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=BWdGk/VE; arc=none smtp.client-ip=74.125.82.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="BWdGk/VE" Received: by mail-dy1-f195.google.com with SMTP id 5a478bee46e88-2ba895adfeaso3339578eec.0 for ; Sun, 05 Apr 2026 04:58:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775390282; x=1775995082; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=LVDnRqTrhczesg8kXnrWc/v5lTq3AGh9d2Q5MTVA1A0=; b=BWdGk/VE+ZoxwXCh23ca6GBYaZ0oxXeI583edw7HPJAkNjrmV6L6exCye7KAljaxXy vUCfsU5oGGhCN7wM7RwMq14BK+4vpMwKWbqqO9vyRoU0lJu8H+uhzLy1NJGD2/5mYxGK zevQroPFfcXDBne/M0u0enqo3/R886gGP1TX3jVZZarTnyAdc/QaD2Wl0p+28yJ09u1Z 1B2cXgacDSXfY8MYiyXy5+yvxiJ+DsY3gI+5N4cou6VTtOxaMDSuY0u+g/mWURiYSaz4 MG2Fu/rMrxjS78jW/XGR+vEc93cqMmggv+wvb7rgdXuyG4O73T1ZJ9fB9/WHsGa0ipJE aLfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775390282; x=1775995082; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=LVDnRqTrhczesg8kXnrWc/v5lTq3AGh9d2Q5MTVA1A0=; b=Ud379DT4Qfq0AQ85qwxU4t7alKm7uoXuHw4eTmze70DLAm5R2v079blVDAOlt1ZXjr uwwKXLgq7QlhjoPi2C4EafGBJvzrCBRkGrw7cAMbluUrjulmOznZELXrSW6Qgi92usNr 0eXEmAgIcb9LPHsXz2oH48mVYBBIDMWmn/Lz0hQ77Ugq4OXymiqSixJrnY/c/O5pzVG7 fzDqS8TCqEGn3usePJ0ELwaWg8MppDTKJzOwCNHO+tIip3AGmDWvezxRkUObkbF7mhPV LBPCAj0zCo/B6mNghc6GNUu3b0nwqZrNxgrE/Jf1AD58czkJNcQT1cuQV8g5Wtk550/F KR9A== X-Forwarded-Encrypted: i=1; AJvYcCU2Nl1m2atm+XNyG2+DjiqK4p3/DaY8Icy8593PpRvIwuv0j2G1MgFEK6fIjKBIVTysct1DgQImnQ51Ysk=@vger.kernel.org X-Gm-Message-State: AOJu0Yzv7Oo3m7sXdT8CvR99SPTToM/eNDWNHtmQuz5efjwWipi1+f75 aPM+1ChcdSvTib/9P9PZpCaZ/+EvH+08mJR4kohUbN1zuW26LzgUCciH X-Gm-Gg: AeBDievuTZ9T1Oc7ChqNDN7hrLOXVQB2K3l8SLS0JNQxGcRDSd6S7nQi+ZbQvHG1uK6 IL1gtS99ljRu2d/v4qzMqiO0hDVvOA/o0Ar1Rp8ynm9oIsc1lzq1jJI3szrCKNqWTH1l++CpAyC 1Arlgqo9K4R18wg789rjrkuucsQe9Yl1WtDDgHLO7qtRGKAj9KbsQmt4AztvJs20NXdCHZZZBBD pyJlLjv2qPWOox8wENrcMJC4wy7AS3JRhgCOltE6At0wFCM1vsFfRhrabmv9Znf+aF1XGooVPRW 3028QNhrHH6yOrcBkQ5c0S2S2Y6UFlxJv+E+apegjx16xn4eOpP322C2P4vv1MnrzCyWGp3++bL 3ad/fy4Grv0Po1pWVtnm6r0vmjBy5czxkoojHNBx7gM9K5rqIRDiIysTd8dflPnqgSpO3LC4XiF gHCDSsDWkixyl1e1jlo9XwFSg7jrMLF2YT0uQRVYcX2aVhZwrG9qwNhbQ= X-Received: by 2002:a05:7301:5793:b0:2c5:3b87:2ffc with SMTP id 5a478bee46e88-2cbf950387dmr4245725eec.7.1775390281575; Sun, 05 Apr 2026 04:58:01 -0700 (PDT) Received: from localhost.localdomain ([76.32.119.210]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2cb92ea0ef1sm8137394eec.21.2026.04.05.04.57.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 05 Apr 2026 04:57:59 -0700 (PDT) From: Hungyu Lin To: gregkh@linuxfoundation.org Cc: ethantidmore@gmail.com, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org, Hungyu Lin Subject: [PATCH v2] staging: rtl8723bs: use standard error codes in xmit init path Date: Sun, 5 Apr 2026 11:57:28 +0000 Message-Id: <20260405115728.12184-1-dennylin0707@gmail.com> X-Mailer: git-send-email 2.34.1 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 use of _SUCCESS/_FAIL return values with standard kernel return conventions (0 on success, negative errno on failure) in the xmit initialization path. Specifically: - rtw_os_xmit_resource_alloc() now returns 0 or -ENOMEM - rtw_alloc_hwxmits() now returns 0 or -ENOMEM - _rtw_init_xmit_priv() updated to propagate error codes and use direct truth checks instead of comparing with _FAIL - caller in os_intfs.c updated accordingly This improves error propagation and aligns the driver with kernel coding style. Signed-off-by: Hungyu Lin --- v2: - Rework xmit init path to remove _SUCCESS/_FAIL usage - Convert allocation helpers to return standard error codes - Update caller to use direct failure checks - Address review feedback from Ethan Tidmore --- drivers/staging/rtl8723bs/core/rtw_xmit.c | 24 +++++++++---------- drivers/staging/rtl8723bs/os_dep/os_intfs.c | 2 +- drivers/staging/rtl8723bs/os_dep/xmit_linux.c | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_xmit.c b/drivers/staging/rt= l8723bs/core/rtw_xmit.c index ea1923023caa..e10592d969e7 100644 --- a/drivers/staging/rtl8723bs/core/rtw_xmit.c +++ b/drivers/staging/rtl8723bs/core/rtw_xmit.c @@ -36,7 +36,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, stru= ct adapter *padapter) int i; struct xmit_buf *pxmitbuf; struct xmit_frame *pxframe; - signed int res =3D _SUCCESS; + signed int res =3D 0; =20 spin_lock_init(&pxmitpriv->lock); spin_lock_init(&pxmitpriv->lock_sctx); @@ -73,7 +73,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, stru= ct adapter *padapter) =20 if (!pxmitpriv->pallocated_frame_buf) { pxmitpriv->pxmit_frame_buf =3D NULL; - res =3D _FAIL; + res =3D -ENOMEM; goto exit; } pxmitpriv->pxmit_frame_buf =3D (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv= ->pallocated_frame_buf), 4); @@ -110,7 +110,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) pxmitpriv->pallocated_xmitbuf =3D vzalloc(NR_XMITBUFF * sizeof(struct xmi= t_buf) + 4); =20 if (!pxmitpriv->pallocated_xmitbuf) { - res =3D _FAIL; + res =3D -ENOMEM; goto exit; } =20 @@ -127,10 +127,10 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, = struct adapter *padapter) =20 /* Tx buf allocation may fail sometimes, so sleep and retry. */ res =3D rtw_os_xmit_resource_alloc(padapter, pxmitbuf, (MAX_XMITBUF_SZ += XMITBUF_ALIGN_SZ), true); - if (res =3D=3D _FAIL) { + if (res) { msleep(10); res =3D rtw_os_xmit_resource_alloc(padapter, pxmitbuf, (MAX_XMITBUF_SZ = + XMITBUF_ALIGN_SZ), true); - if (res =3D=3D _FAIL) + if (res) goto exit; } =20 @@ -160,7 +160,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) =20 if (!pxmitpriv->xframe_ext_alloc_addr) { pxmitpriv->xframe_ext =3D NULL; - res =3D _FAIL; + res =3D -ENOMEM; goto exit; } pxmitpriv->xframe_ext =3D (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->xfr= ame_ext_alloc_addr), 4); @@ -193,7 +193,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) pxmitpriv->pallocated_xmit_extbuf =3D vzalloc(NR_XMIT_EXTBUFF * sizeof(st= ruct xmit_buf) + 4); =20 if (!pxmitpriv->pallocated_xmit_extbuf) { - res =3D _FAIL; + res =3D -ENOMEM; goto exit; } =20 @@ -209,7 +209,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) pxmitbuf->buf_tag =3D XMITBUF_MGNT; =20 res =3D rtw_os_xmit_resource_alloc(padapter, pxmitbuf, MAX_XMIT_EXTBUF_S= Z + XMITBUF_ALIGN_SZ, true); - if (res =3D=3D _FAIL) + if (res) goto exit; =20 pxmitbuf->phead =3D pxmitbuf->pbuf; @@ -239,7 +239,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) res =3D rtw_os_xmit_resource_alloc(padapter, pxmitbuf, MAX_CMDBUF_SZ + XMITBUF_ALIGN_SZ, true); - if (res =3D=3D _FAIL) + if (res) goto exit; =20 pxmitbuf->phead =3D pxmitbuf->pbuf; @@ -251,7 +251,7 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, st= ruct adapter *padapter) } =20 res =3D rtw_alloc_hwxmits(padapter); - if (res =3D=3D _FAIL) + if (res) goto exit; rtw_init_hwxmits(pxmitpriv->hwxmits, pxmitpriv->hwxmit_entry); =20 @@ -1868,7 +1868,7 @@ s32 rtw_alloc_hwxmits(struct adapter *padapter) pxmitpriv->hwxmits =3D kzalloc_objs(*hwxmits, pxmitpriv->hwxmit_entry, GFP_ATOMIC); if (!pxmitpriv->hwxmits) - return _FAIL; + return -ENOMEM; =20 hwxmits =3D pxmitpriv->hwxmits; =20 @@ -1893,7 +1893,7 @@ s32 rtw_alloc_hwxmits(struct adapter *padapter) } else { } =20 - return _SUCCESS; + return 0; } =20 void rtw_free_hwxmits(struct adapter *padapter) diff --git a/drivers/staging/rtl8723bs/os_dep/os_intfs.c b/drivers/staging/= rtl8723bs/os_dep/os_intfs.c index 29939bf5a156..bad2dba73eb6 100644 --- a/drivers/staging/rtl8723bs/os_dep/os_intfs.c +++ b/drivers/staging/rtl8723bs/os_dep/os_intfs.c @@ -654,7 +654,7 @@ u8 rtw_init_drv_sw(struct adapter *padapter) =20 init_mlme_ext_priv(padapter); =20 - if (_rtw_init_xmit_priv(&padapter->xmitpriv, padapter) =3D=3D _FAIL) + if (_rtw_init_xmit_priv(&padapter->xmitpriv, padapter)) goto free_mlme_ext; =20 if (_rtw_init_recv_priv(&padapter->recvpriv, padapter) =3D=3D _FAIL) diff --git a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c b/drivers/stagin= g/rtl8723bs/os_dep/xmit_linux.c index 0be3143fffe5..a8b8545ed25e 100644 --- a/drivers/staging/rtl8723bs/os_dep/xmit_linux.c +++ b/drivers/staging/rtl8723bs/os_dep/xmit_linux.c @@ -51,12 +51,12 @@ int rtw_os_xmit_resource_alloc(struct adapter *padapter= , struct xmit_buf *pxmitb if (alloc_sz > 0) { pxmitbuf->pallocated_buf =3D kzalloc(alloc_sz, GFP_KERNEL); if (!pxmitbuf->pallocated_buf) - return _FAIL; + return -ENOMEM; =20 pxmitbuf->pbuf =3D (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitbuf->pallocated= _buf), XMITBUF_ALIGN_SZ); } =20 - return _SUCCESS; + return 0; } =20 void rtw_os_xmit_resource_free(struct adapter *padapter, struct xmit_buf *= pxmitbuf, u32 free_sz, u8 flag) --=20 2.34.1