From: Ping-Ke Shih <pkshih@realtek.com>
To: Su Hui <suhui@nfschina.com>,
"dan.carpenter@linaro.org" <dan.carpenter@linaro.org>,
"kvalo@kernel.org" <kvalo@kernel.org>,
"nathan@kernel.org" <nathan@kernel.org>,
"ndesaulniers@google.com" <ndesaulniers@google.com>,
"trix@redhat.com" <trix@redhat.com>
Cc: "lizetao1@huawei.com" <lizetao1@huawei.com>,
"linville@tuxdriver.com" <linville@tuxdriver.com>,
"Larry.Finger@lwfinger.net" <Larry.Finger@lwfinger.net>,
"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"llvm@lists.linux.dev" <llvm@lists.linux.dev>,
"kernel-janitors@vger.kernel.org"
<kernel-janitors@vger.kernel.org>
Subject: RE: [PATCH wireless-next v3 2/2] wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior
Date: Mon, 27 Nov 2023 02:04:14 +0000 [thread overview]
Message-ID: <daf6238559114e50a673d97b3f1bab4e@realtek.com> (raw)
In-Reply-To: <20231127013511.26694-2-suhui@nfschina.com>
> -----Original Message-----
> From: Su Hui <suhui@nfschina.com>
> Sent: Monday, November 27, 2023 9:35 AM
> To: Ping-Ke Shih <pkshih@realtek.com>; dan.carpenter@linaro.org; kvalo@kernel.org; nathan@kernel.org;
> ndesaulniers@google.com; trix@redhat.com
> Cc: Su Hui <suhui@nfschina.com>; lizetao1@huawei.com; linville@tuxdriver.com; Larry.Finger@lwfinger.net;
> linux-wireless@vger.kernel.org; linux-kernel@vger.kernel.org; llvm@lists.linux.dev;
> kernel-janitors@vger.kernel.org
> Subject: [PATCH wireless-next v3 2/2] wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior
>
> Clang staic checker warning:
> drivers/net/wireless/realtek/rtlwifi/rtl8821ae/phy.c:184:49:
> The result of the left shift is undefined due to shifting by '32',
> which is greater or equal to the width of type 'u32'.
> [core.UndefinedBinaryOperatorResult]
>
> If the value of the right operand is negative or is greater than or
> equal to the width of the promoted left operand, the behavior is
> undefined.[1][2]
>
> For example, when using different gcc's compilation optimizaation options
> (-O0 or -O2), the result of '(u32)data << 32' is different. One is 0, the
> other is old value of data. Let _rtl8821ae_phy_calculate_bit_shift()'s
> return value less than 32 to fix this problem. Warn if bitmask is zero.
>
> [1]:https://stackoverflow.com/questions/11270492/what-does-the-c-
> standard-say-about-bitshifting-more-bits-than-the-width-of-type
> [2]:https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf
>
> Fixes: 21e4b0726dc6 ("rtlwifi: rtl8821ae: Move driver from staging to regular tree")
> Signed-off-by: Su Hui <suhui@nfschina.com>
Acked-by: Ping-Ke Shih <pkshih@realtek.com>
> + if (WARN_ON_ONCE(!bitmask))
I test this patch with real hardware to connect 2GHz and 5GHz AP
respectively and keep ping for a while. It doesn't throw warning
by this statement.
next prev parent reply other threads:[~2023-11-27 2:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-27 1:35 [PATCH wireless-next v3 1/2] wifi: rtlwifi: rtl8821ae: phy: remove some useless code Su Hui
2023-11-27 1:35 ` [PATCH wireless-next v3 2/2] wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior Su Hui
2023-11-27 2:04 ` Ping-Ke Shih [this message]
2023-11-30 19:22 ` [wireless-next,v3,1/2] wifi: rtlwifi: rtl8821ae: phy: remove some useless code Kalle Valo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=daf6238559114e50a673d97b3f1bab4e@realtek.com \
--to=pkshih@realtek.com \
--cc=Larry.Finger@lwfinger.net \
--cc=dan.carpenter@linaro.org \
--cc=kernel-janitors@vger.kernel.org \
--cc=kvalo@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=lizetao1@huawei.com \
--cc=llvm@lists.linux.dev \
--cc=nathan@kernel.org \
--cc=ndesaulniers@google.com \
--cc=suhui@nfschina.com \
--cc=trix@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox