lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4a3f6b40a0064de1acd80f4eeb1cdd0f@realtek.com>
Date: Wed, 10 Sep 2025 00:37:54 +0000
From: Ping-Ke Shih <pkshih@...ltek.com>
To: Ondřej Jirman <megi@....cz>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
CC: "open list:REALTEK WIRELESS DRIVER (rtw89)"
	<linux-wireless@...r.kernel.org>
Subject: RE: [PATCH] net: wireless: rtw89: Sleep while waiting for firmware init

Ondřej Jirman <megi@....cz> wrote:
> From: Ondrej Jirman <megi@....cz>
> 
> This avoids RCU stalls caused by waiting up to 400ms for firmware init.
> 
> Signed-off-by: Ondrej Jirman <megi@....cz>
> ---
>  drivers/net/wireless/realtek/rtw89/fw.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/net/wireless/realtek/rtw89/fw.c b/drivers/net/wireless/realtek/rtw89/fw.c
> index 16e59a4a486e..2c034b764a0a 100644
> --- a/drivers/net/wireless/realtek/rtw89/fw.c
> +++ b/drivers/net/wireless/realtek/rtw89/fw.c
> @@ -109,9 +109,9 @@ int rtw89_fw_check_rdy(struct rtw89_dev *rtwdev, enum rtw89_fwdl_check_type type
>         u8 val;
>         int ret;
> 
> -       ret = read_poll_timeout_atomic(mac->fwdl_get_status, val,
> -                                      val == RTW89_FWDL_WCPU_FW_INIT_RDY,
> -                                      1, FWDL_WAIT_CNT, false, rtwdev, type);
> +       ret = read_poll_timeout(mac->fwdl_get_status, val,
> +                               val == RTW89_FWDL_WCPU_FW_INIT_RDY,
> +                               1, FWDL_WAIT_CNT, false, rtwdev, type);

As I know, sleeping while RCU lock is not allowed. Please share kernel log
about the RCU stall and your perspective. 

>         if (ret) {
>                 switch (val) {
>                 case RTW89_FWDL_CHECKSUM_FAIL:
> --
> 2.51.0
> 


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ