RE: [PATCH 21/38] mwifiex: fix comparison expression
From: Amitkumar Karwar <hidden>
Date: 2015-09-22 10:57:01
Also in:
linux-wireless, lkml
Hi Andrzej,
quoted hunk ↗ jump to hunk
From: Andrzej Hajda [mailto:a.hajda@samsung.com] Sent: Monday, September 21, 2015 7:04 PM To: linux-kernel@vger.kernel.org Cc: Andrzej Hajda; Bartlomiej Zolnierkiewicz; Marek Szyprowski; Amitkumar Karwar; Nishant Sarmukadam; Kalle Valo; linux- wireless@vger.kernel.org; netdev@vger.kernel.org Subject: [PATCH 21/38] mwifiex: fix comparison expression To avoid underflows signed variables should be used in expression. The problem has been detected using proposed semantic patch scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1]. [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576 Signed-off-by: Andrzej Hajda <redacted> --- drivers/net/wireless/mwifiex/11n_rxreorder.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff --git a/drivers/net/wireless/mwifiex/11n_rxreorder.cb/drivers/net/wireless/mwifiex/11n_rxreorder.c index 2906cd5..b3970a8 100644--- a/drivers/net/wireless/mwifiex/11n_rxreorder.c +++ b/drivers/net/wireless/mwifiex/11n_rxreorder.c@@ -615,10 +615,10 @@ int mwifiex_11n_rx_reorder_pkt(structmwifiex_private *priv, ((end_win > start_win) && ((seq_num > end_win) || (seq_num < start_win)))) { end_win = seq_num; - if (((seq_num - win_size) + 1) >= 0) + if (((end_win - win_size) + 1) >= 0) start_win = (end_win - win_size) + 1; else - start_win = (MAX_TID_VALUE - (win_size - seq_num)) + 1; + start_win = (MAX_TID_VALUE - (win_size - end_win)) + 1; mwifiex_11n_dispatch_pkt_until_start_win(priv, tbl, start_win); }
Acked-by: Amitkumar Karwar <redacted> Regards, Amitkumar