All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] sctp: use bitmap_weight
@ 2012-11-17  6:39 ` Akinobu Mita
  0 siblings, 0 replies; 9+ messages in thread
From: Akinobu Mita @ 2012-11-17  6:39 UTC (permalink / raw)
  To: linux-sctp; +Cc: Akinobu Mita, Vlad Yasevich, Sridhar Samudrala, netdev

Use bitmap_weight to count the total number of bits set in bitmap.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Vlad Yasevich <vyasevich@gmail.com>
Cc: Sridhar Samudrala <sri@us.ibm.com>
Cc: linux-sctp@vger.kernel.org
Cc: netdev@vger.kernel.org
---
 net/sctp/tsnmap.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/net/sctp/tsnmap.c b/net/sctp/tsnmap.c
index b5fb7c4..5f25e0c 100644
--- a/net/sctp/tsnmap.c
+++ b/net/sctp/tsnmap.c
@@ -272,7 +272,7 @@ __u16 sctp_tsnmap_pending(struct sctp_tsnmap *map)
 	__u32 max_tsn = map->max_tsn_seen;
 	__u32 base_tsn = map->base_tsn;
 	__u16 pending_data;
-	u32 gap, i;
+	u32 gap;
 
 	pending_data = max_tsn - cum_tsn;
 	gap = max_tsn - base_tsn;
@@ -280,11 +280,7 @@ __u16 sctp_tsnmap_pending(struct sctp_tsnmap *map)
 	if (gap == 0 || gap >= map->len)
 		goto out;
 
-	for (i = 0; i < gap+1; i++) {
-		if (test_bit(i, map->tsn_map))
-			pending_data--;
-	}
-
+	pending_data -= bitmap_weight(map->tsn_map, gap + 1);
 out:
 	return pending_data;
 }
-- 
1.7.11.7

^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-11-18  3:01 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-11-17  6:39 [PATCH] sctp: use bitmap_weight Akinobu Mita
2012-11-17  6:39 ` Akinobu Mita
2012-11-17  7:35 ` [PATCH] sound: " Joe Perches
2012-11-17  7:35   ` Joe Perches
2012-11-17 10:36   ` Takashi Iwai
2012-11-18  1:45 ` [PATCH] sctp: " Vlad Yasevich
2012-11-18  1:45   ` Vlad Yasevich
2012-11-18  3:01   ` David Miller
2012-11-18  3:01     ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.