hpfs: use hweight32
authorAkinobu Mita <akinobu.mita@gmail.com>
Wed, 16 Dec 2009 00:46:55 +0000 (16:46 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 16 Dec 2009 15:20:06 +0000 (07:20 -0800)
Use hweight32 instead of counting for each bit

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>
fs/hpfs/super.c

index f2feaa0..cf6fe4a 100644 (file)
@@ -119,11 +119,8 @@ unsigned hpfs_count_one_bitmap(struct super_block *s, secno secno)
        unsigned i, count;
        if (!(bits = hpfs_map_4sectors(s, secno, &qbh, 4))) return 0;
        count = 0;
-       for (i = 0; i < 2048 / sizeof(unsigned); i++) {
-               unsigned b; 
-               if (!bits[i]) continue;
-               for (b = bits[i]; b; b>>=1) count += b & 1;
-       }
+       for (i = 0; i < 2048 / sizeof(unsigned); i++)
+               count += hweight32(bits[i]);
        hpfs_brelse4(&qbh);
        return count;
 }