diff mbox series

p54: add missing parentheses in p54_flush()

Message ID 20220714091741.90747-1-subkhankulov@ispras.ru (mailing list archive)
State Changes Requested
Delegated to: Kalle Valo
Headers show
Series p54: add missing parentheses in p54_flush() | expand

Commit Message

Rustam Subkhankulov July 14, 2022, 9:17 a.m. UTC
The assignment of the value to the variable total in the loop
condition must be enclosed in additional parentheses, since otherwise,
in accordance with the precedence of the operators, the conjunction
will be performed first, and only then the assignment.

Due to this error, a warning later in the function after the loop may
not occur in the situation when it should.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Signed-off-by: Rustam Subkhankulov <subkhankulov@ispras.ru>
Fixes: d3466830c165 ("p54: move under intersil vendor directory")
---
 drivers/net/wireless/intersil/p54/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Johannes Berg July 14, 2022, 9:45 a.m. UTC | #1
On Thu, 2022-07-14 at 12:17 +0300, Rustam Subkhankulov wrote:
> The assignment of the value to the variable total in the loop
> condition must be enclosed in additional parentheses, since otherwise,
> in accordance with the precedence of the operators, the conjunction
> will be performed first, and only then the assignment.
> 
> Due to this error, a warning later in the function after the loop may
> not occur in the situation when it should.
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Signed-off-by: Rustam Subkhankulov <subkhankulov@ispras.ru>
> Fixes: d3466830c165 ("p54: move under intersil vendor directory")
> 

That fixes can't be right, it just moved the code.

johannes
Arend Van Spriel July 14, 2022, 12:58 p.m. UTC | #2
On 7/14/2022 11:45 AM, Johannes Berg wrote:
> On Thu, 2022-07-14 at 12:17 +0300, Rustam Subkhankulov wrote:
>> The assignment of the value to the variable total in the loop
>> condition must be enclosed in additional parentheses, since otherwise,
>> in accordance with the precedence of the operators, the conjunction
>> will be performed first, and only then the assignment.
>>
>> Due to this error, a warning later in the function after the loop may
>> not occur in the situation when it should.
>>
>> Found by Linux Verification Center (linuxtesting.org) with SVACE.
>>
>> Signed-off-by: Rustam Subkhankulov <subkhankulov@ispras.ru>
>> Fixes: d3466830c165 ("p54: move under intersil vendor directory")
>>
> 
> That fixes can't be right, it just moved the code.

commit 0d4171e2153b70957fe67867420a1a24d5e4cd82
Author: Christian Lamparter <chunkeey@googlemail.com>
Date:   Wed Feb 16 19:43:06 2011 +0100

     p54: implement flush callback

     Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
     Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff mbox series

Patch

diff --git a/drivers/net/wireless/intersil/p54/main.c b/drivers/net/wireless/intersil/p54/main.c
index a3ca6620dc0c..8fa3ec71603e 100644
--- a/drivers/net/wireless/intersil/p54/main.c
+++ b/drivers/net/wireless/intersil/p54/main.c
@@ -682,7 +682,7 @@  static void p54_flush(struct ieee80211_hw *dev, struct ieee80211_vif *vif,
 	 * queues have already been stopped and no new frames can sneak
 	 * up from behind.
 	 */
-	while ((total = p54_flush_count(priv) && i--)) {
+	while ((total = p54_flush_count(priv)) && i--) {
 		/* waste time */
 		msleep(20);
 	}