From nobody Sun Feb 8 15:07:44 2026 Received: from out203-205-221-209.mail.qq.com (out203-205-221-209.mail.qq.com [203.205.221.209]) (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 2C87823D7FB for ; Thu, 18 Dec 2025 14:18:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.205.221.209 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766067504; cv=none; b=IRvHj0RxHYVeEygk4OiB2j7rMOqoGsbifLmuTyrtlJvuAB4UkZO7+O7OL2XYdnCJHSbl6GvzGGQy8J3OtkPyPgTty0U7BFflYmadfPCW/Xw+8dqDuxQeIydUxg2WqVTohyK9hchKXmldGtJvhNhBxOg/SwYFKossR1I/g9iHiFM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766067504; c=relaxed/simple; bh=+iMbl82DQyiqCzms1xq2vQkcvK1hNIYO4o+Jv4vKI9U=; h=Message-ID:From:To:Cc:Subject:Date:MIME-Version; b=uUdGQeAfFiDmFl4LDYVOwu7m3KwFMwXFqCi75YpWqpXSlQJbh8fwog43+CuSPcfOtNIi+30Ajc7JsuoM+kKEhwZXYoVMd+1zeLhyKVwLDqTQ7w7osJfli7Z6c9CaPkWNzHrBZpbJm9FEs/JG2GgaiJzm2ivq1Uu6GZgiIHiO9ak= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com; spf=pass smtp.mailfrom=qq.com; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b=WsTMgoO0; arc=none smtp.client-ip=203.205.221.209 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=qq.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b="WsTMgoO0" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1766067489; bh=3O7ANfTKFgYaZh2YdqIf6zrp71Uwb7H+6oPJAXyR+KA=; h=From:To:Cc:Subject:Date; b=WsTMgoO0stiPYprRpkuLL/SDrr8Xu9iiDs8PNWZhCeBlzPWgvvB1yJCDW4GfJO3Kc h453lxFFo3hQEJt4Spj+w3+CQ97fN3BxbVzBfxsLKhms5NzUMScs6Vufl0ClkwXSGX gTzg6yVIUKIQwox9plHJODM4e2PqBP5JQEOvBVAY= Received: from cjz-VMware-Virtual-Platform.localdomain ([110.176.98.92]) by newxmesmtplogicsvrszc43-0.qq.com (NewEsmtp) with SMTP id 439B0CC0; Thu, 18 Dec 2025 22:16:57 +0800 X-QQ-mid: xmsmtpt1766067417tkjorx3fy Message-ID: X-QQ-XMAILINFO: OKOirRU4nj6hM0sLl2NSlBWTXfmNOPIeuGHzdhESnzREF/7Az4h4v+avJqST9Y exqoc+KJUlaHnsr+MrmwTnRc1gcpm9y6VtMewPqF4NAAS1VgSkazF/tQo1OphlH9FLO+gxqo+iTD O5c64Lhpv10ehstEp2HB7yopvFuDiUibGwz+N5xdLeTTXYbPFjNSmGGlga3QuphvPWtSus+c2LsQ a8I4BhXE84QT2YFwhFKKOAIfG9WTT8jTIPcjBoq+j/NII5P2bao6FD6Smta3prbBmqX4wdUizY8D OCRtjaIXypojbFrYwJqS+nV8IxuOPPUI4xjErhteEJc8jpyuV7oF9xEREPrkC4Ibng4TAIVdBXm8 GlsL6F0+fEI3N5A653iR06Q+mXC2WL3swgzVm4WaxrlZrE7fnlIolF9cDnXXM5WjhU1nMiCQgUK4 +rzdNeXO8fQZvW43pUDQ1LAKh2uB623S3XikBgD8U+4D+6JUp+2NKoKaHaJwvdmCcD90/g2B1FIe vKGh0dqiRCK4g46t4A0TCkXV9WqZYbW9NTf6/+wi1OkYnXvj6CDPYEjLJNm1azLIozWXNFEUR2gC JlQ2pGwVX5RF8ZFHB09iZqo5i/qPZ9tusXqhhQKOzW5wGnKyNCvx3KjNC2ZYSKenBFuhsb//3YS5 QNC3U8zXvHAr6TXJhReN9ErbD+I5OEzGTjsHYNAr/2FIPeDC3oLo78KDf0/34ZlMGyejQtfXGzbv QBfBYsvDjBl9XssCVnv+uhxRA/cO2ZxL1DKwvtGV+a2uFGltl5kkon5gDM2e5qTfC8yTUIIdNokq Z73bpUfF26y+eq+4f6bp2CzV5dl3FbtT8ctpsDZfvCb05EnlMdQvYq0SeMZUx6ZyzdDne0/Uw2bb 0UrgyWQx+IsdxAIph43gByho56QLASYjkKbd9GrHgliiZnvyhKrNiof0FWwHFSefW1IjVjRVYMJ9 zBUYA+itwq2VMXXUW4XQtHLEheI4/7yRw273yyT8QkItxIPBp+wQ== X-QQ-XMRINFO: MSVp+SPm3vtS1Vd6Y4Mggwc= From: cjz To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, changjunzheng Subject: [PATCH] rtl8723bs: Replace atomic_t with int for continual_io_error (no concurrency) Date: Thu, 18 Dec 2025 22:16:55 +0800 X-OQ-MSGID: <20251218141655.15963-1-guagua210311@qq.com> X-Mailer: git-send-email 2.43.0 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" From: changjunzheng The 'continual_io_error' variable is defined as atomic_t, but all call sites of rtw_inc_and_chk_continual_io_error/rtw_reset_continual_io_error are in process context (sdio_ops_linux.c/sdio_intf.c, SDIO read/write retry logic). There is no interrupt/thread concurrency modifying this variable, so atomic operations are unnecessary and introduce slight performance overhead. This change replaces atomic_t with a normal int, and replaces atomic_inc_re= turn()/atomic_set() with ordinary increment/assignment, keeping all functional logic unchanged. Signed-off-by: changjunzheng --- drivers/staging/rtl8723bs/core/rtw_io.c | 10 +++------- drivers/staging/rtl8723bs/include/drv_types.h | 2 +- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/drivers/staging/rtl8723bs/core/rtw_io.c b/drivers/staging/rtl8= 723bs/core/rtw_io.c index fe9f94001eed..0f52710e6d3a 100644 --- a/drivers/staging/rtl8723bs/core/rtw_io.c +++ b/drivers/staging/rtl8723bs/core/rtw_io.c @@ -139,16 +139,12 @@ int rtw_init_io_priv(struct adapter *padapter, void (= *set_intf_ops)(struct adapt */ int rtw_inc_and_chk_continual_io_error(struct dvobj_priv *dvobj) { - int error_count =3D atomic_inc_return(&dvobj->continual_io_error); - - if (error_count > MAX_CONTINUAL_IO_ERR) - return true; - - return false; + dvobj->continual_io_error++; + return (dvobj->continual_io_error > MAX_CONTINUAL_IO_ERR); } =20 /* Set the continual_io_error of this @param dvobjprive to 0 */ void rtw_reset_continual_io_error(struct dvobj_priv *dvobj) { - atomic_set(&dvobj->continual_io_error, 0); + dvobj->continual_io_error =3D 0; } diff --git a/drivers/staging/rtl8723bs/include/drv_types.h b/drivers/stagin= g/rtl8723bs/include/drv_types.h index f86180dc350c..bd7bb5828d56 100644 --- a/drivers/staging/rtl8723bs/include/drv_types.h +++ b/drivers/staging/rtl8723bs/include/drv_types.h @@ -279,7 +279,7 @@ struct dvobj_priv { u8 Queue2Pipe[HW_QUEUE_ENTRY];/* for out pipe mapping */ =20 u8 irq_alloc; - atomic_t continual_io_error; + int continual_io_error; =20 atomic_t disable_func; =20 --=20 2.43.0