[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c39feb8063924701b99965e6b650c993@realtek.com>
Date: Thu, 7 Nov 2024 00:51:25 +0000
From: Ping-Ke Shih <pkshih@...ltek.com>
To: Colin Ian King <colin.i.king@...il.com>, Kalle Valo <kvalo@...nel.org>,
Su
Hui <suhui@...china.com>,
"linux-wireless@...r.kernel.org"
<linux-wireless@...r.kernel.org>
CC: "kernel-janitors@...r.kernel.org" <kernel-janitors@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stable@...r.kernel.org" <stable@...r.kernel.org>
Subject: RE: [PATCH] wifi: rtlwifi: rtl8821ae: phy: restore removed code to fix infinite loop
Colin Ian King <colin.i.king@...il.com> wrote:
> A previous clean-up fix removed the assignment of v2 inside a while loop
> that turned it into an infinite loop. Fix this by restoring the assignment
> of v2 from array[] so that v2 is updated inside the loop.
>
> Fixes: cda37445718d ("wifi: rtlwifi: rtl8821ae: phy: remove some useless code")
> Signed-off-by: Colin Ian King <colin.i.king@...il.com>
I tested RTL8812AE/8821AE. Luckily, parsing current PHY register parameters
never falls into the check condition.
Tested-by: Ping-Ke Shih <pkshih@...ltek.com>
> ---
> drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c
> b/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c
> index 1be51ea3f3c8..0d4d787e8be5 100644
> --- a/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c
> +++ b/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c
> @@ -2033,8 +2033,10 @@ static bool _rtl8821ae_phy_config_bb_with_pgheaderfile(struct ieee80211_hw *hw,
> if (!_rtl8821ae_check_condition(hw, v1)) {
> i += 2; /* skip the pair of expression*/
> v2 = array[i+1];
> - while (v2 != 0xDEAD)
> + while (v2 != 0xDEAD) {
> i += 3;
> + v2 = array[i + 1];
> + }
> }
> }
> }
> --
> 2.39.5
Powered by blists - more mailing lists