Search Linux Wireless

RE: [PATCH] rtw88: Initialize ret in rtw_wow_check_fw_status

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Nathan Chancellor
> Subject: [PATCH] rtw88: Initialize ret in rtw_wow_check_fw_status
> 
> Clang warns a few times (trimmed for brevity):
> 
> ../drivers/net/wireless/realtek/rtw88/wow.c:295:7: warning: variable
> 'ret' is used uninitialized whenever 'if' condition is false
> [-Wsometimes-uninitialized]
> 
> Initialize ret to true and change the other assignments to false because
> it is a boolean value.
> 
> Fixes: 44bc17f7f5b3 ("rtw88: support wowlan feature for 8822c")
> Link: https://github.com/ClangBuiltLinux/linux/issues/850
> Signed-off-by: Nathan Chancellor <natechancellor@xxxxxxxxx>
> ---
>  drivers/net/wireless/realtek/rtw88/wow.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/net/wireless/realtek/rtw88/wow.c
> b/drivers/net/wireless/realtek/rtw88/wow.c
> index af5c27e1bb07..5db49802c72c 100644
> --- a/drivers/net/wireless/realtek/rtw88/wow.c
> +++ b/drivers/net/wireless/realtek/rtw88/wow.c
> @@ -283,18 +283,18 @@ static void rtw_wow_rx_dma_start(struct rtw_dev
> *rtwdev)
> 
>  static bool rtw_wow_check_fw_status(struct rtw_dev *rtwdev, bool
> wow_enable)
>  {
> -	bool ret;
> +	bool ret = true;
> 
>  	/* wait 100ms for wow firmware to finish work */
>  	msleep(100);
> 
>  	if (wow_enable) {
>  		if (!rtw_read8(rtwdev, REG_WOWLAN_WAKE_REASON))
> -			ret = 0;
> +			ret = false;
>  	} else {
>  		if (rtw_read32_mask(rtwdev, REG_FE1IMR, BIT_FS_RXDONE) == 0
> &&
>  		    rtw_read32_mask(rtwdev, REG_RXPKT_NUM,
> BIT_RW_RELEASE) == 0)
> -			ret = 0;
> +			ret = false;
>  	}
> 
>  	if (ret)
> --
> 2.25.0

NACK.

This patch could lead to incorrect behavior of WOW.
I will send a new patch to fix it, and change the type to "int".

Yan-Hsuan



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux