aboutsummaryrefslogtreecommitdiffstats
path: root/fs/hpfs/super.c
diff options
context:
space:
mode:
authorAkinobu Mita <akinobu.mita@gmail.com>2009-12-15 19:46:56 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2009-12-16 10:20:06 -0500
commitf4c54fcf3ae6bdc0abf4e777a9499e2581bc8e94 (patch)
tree1200ce82c805679e5a18e02516ceac8f6bec25b4 /fs/hpfs/super.c
parentc2923c3a3ed71563891585bf58481bcdde72f403 (diff)
hpfs: use bitmap_weight()
Use bitmap_weight instead of doing hweight32 for each 32bit in bitmap. 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> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/hpfs/super.c')
-rw-r--r--fs/hpfs/super.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/fs/hpfs/super.c b/fs/hpfs/super.c
index cf6fe4ad651a..cadc4ce48656 100644
--- a/fs/hpfs/super.c
+++ b/fs/hpfs/super.c
@@ -14,6 +14,7 @@
14#include <linux/magic.h> 14#include <linux/magic.h>
15#include <linux/sched.h> 15#include <linux/sched.h>
16#include <linux/smp_lock.h> 16#include <linux/smp_lock.h>
17#include <linux/bitmap.h>
17 18
18/* Mark the filesystem dirty, so that chkdsk checks it when os/2 booted */ 19/* Mark the filesystem dirty, so that chkdsk checks it when os/2 booted */
19 20
@@ -115,12 +116,13 @@ static void hpfs_put_super(struct super_block *s)
115unsigned hpfs_count_one_bitmap(struct super_block *s, secno secno) 116unsigned hpfs_count_one_bitmap(struct super_block *s, secno secno)
116{ 117{
117 struct quad_buffer_head qbh; 118 struct quad_buffer_head qbh;
118 unsigned *bits; 119 unsigned long *bits;
119 unsigned i, count; 120 unsigned count;
120 if (!(bits = hpfs_map_4sectors(s, secno, &qbh, 4))) return 0; 121
121 count = 0; 122 bits = hpfs_map_4sectors(s, secno, &qbh, 4);
122 for (i = 0; i < 2048 / sizeof(unsigned); i++) 123 if (!bits)
123 count += hweight32(bits[i]); 124 return 0;
125 count = bitmap_weight(bits, 2048 * BITS_PER_BYTE);
124 hpfs_brelse4(&qbh); 126 hpfs_brelse4(&qbh);
125 return count; 127 return count;
126} 128}