[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250326155200.39895-1-yury.norov@gmail.com>
Date: Wed, 26 Mar 2025 11:51:58 -0400
From: Yury Norov <yury.norov@...il.com>
To: Christian Lamparter <chunkeey@...glemail.com>,
linux-wireless@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: Yury Norov <yury.norov@...il.com>
Subject: [PATCH] wifi: carl9170: micro-optimize carl9170_tx_shift_bm()
The function calls bitmap_empty() just before find_first_bit(). Both
functions are O(N). Because find_first_bit() returns >= nbits in case of
empty bitmap, the bitmap_empty() test may be avoided.
Signed-off-by: Yury Norov <yury.norov@...il.com>
---
drivers/net/wireless/ath/carl9170/tx.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath/carl9170/tx.c b/drivers/net/wireless/ath/carl9170/tx.c
index 0226c31a6cae..b7717f9e1e9b 100644
--- a/drivers/net/wireless/ath/carl9170/tx.c
+++ b/drivers/net/wireless/ath/carl9170/tx.c
@@ -366,8 +366,7 @@ static void carl9170_tx_shift_bm(struct ar9170 *ar,
if (WARN_ON_ONCE(off >= CARL9170_BAW_BITS))
return;
- if (!bitmap_empty(tid_info->bitmap, off))
- off = find_first_bit(tid_info->bitmap, off);
+ off = min(off, find_first_bit(tid_info->bitmap, off));
tid_info->bsn += off;
tid_info->bsn &= 0x0fff;
--
2.43.0
Powered by blists - more mailing lists