* [PATCH -mm] hpfs: Use bitmap_weight()
@ 2009-11-16 3:06 Akinobu Mita
0 siblings, 0 replies; only message in thread
From: Akinobu Mita @ 2009-11-16 3:06 UTC (permalink / raw)
To: akpm, linux-kernel; +Cc: Akinobu Mita, Mikulas Patocka, Al Viro
Use bitmap_weight instead of doing hweight32 for each 32bit in bitmap.
This patch applies on top of hpfs-use-hweight32.patch in -mm
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Cc: Al Viro <viro@zeniv.linux.org.uk>
---
fs/hpfs/super.c | 14 ++++++++------
1 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c
index cf6fe4a..cadc4ce 100644
--- a/fs/hpfs/super.c
+++ b/fs/hpfs/super.c
@@ -14,6 +14,7 @@
#include <linux/magic.h>
#include <linux/sched.h>
#include <linux/smp_lock.h>
+#include <linux/bitmap.h>
/* Mark the filesystem dirty, so that chkdsk checks it when os/2 booted */
@@ -115,12 +116,13 @@ static void hpfs_put_super(struct super_block *s)
unsigned hpfs_count_one_bitmap(struct super_block *s, secno secno)
{
struct quad_buffer_head qbh;
- unsigned *bits;
- unsigned i, count;
- if (!(bits = hpfs_map_4sectors(s, secno, &qbh, 4))) return 0;
- count = 0;
- for (i = 0; i < 2048 / sizeof(unsigned); i++)
- count += hweight32(bits[i]);
+ unsigned long *bits;
+ unsigned count;
+
+ bits = hpfs_map_4sectors(s, secno, &qbh, 4);
+ if (!bits)
+ return 0;
+ count = bitmap_weight(bits, 2048 * BITS_PER_BYTE);
hpfs_brelse4(&qbh);
return count;
}
--
1.6.5.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2009-11-16 3:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-16 3:06 [PATCH -mm] hpfs: Use bitmap_weight() Akinobu Mita
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox