Btrfs: using for_each_set_bit_from to simplify the code
authorWei Yongjun <yongjun_wei@trendmicro.com.cn>
Fri, 14 Sep 2012 02:29:02 +0000 (20:29 -0600)
committerChris Mason <chris.mason@fusionio.com>
Thu, 4 Oct 2012 13:39:55 +0000 (09:39 -0400)
Using for_each_set_bit_from() to simplify the code.

spatch with a semantic match is used to found this.
(http://coccinelle.lip6.fr/)

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
fs/btrfs/free-space-cache.c

index 6b10acf..b107e68 100644 (file)
@@ -1454,9 +1454,7 @@ static int search_bitmap(struct btrfs_free_space_ctl *ctl,
                          max_t(u64, *offset, bitmap_info->offset));
        bits = bytes_to_bits(*bytes, ctl->unit);
 
-       for (i = find_next_bit(bitmap_info->bitmap, BITS_PER_BITMAP, i);
-            i < BITS_PER_BITMAP;
-            i = find_next_bit(bitmap_info->bitmap, BITS_PER_BITMAP, i + 1)) {
+       for_each_set_bit_from(i, bitmap_info->bitmap, BITS_PER_BITMAP) {
                next_zero = find_next_zero_bit(bitmap_info->bitmap,
                                               BITS_PER_BITMAP, i);
                if ((next_zero - i) >= bits) {
@@ -2307,9 +2305,7 @@ static int btrfs_bitmap_cluster(struct btrfs_block_group_cache *block_group,
 
 again:
        found_bits = 0;
-       for (i = find_next_bit(entry->bitmap, BITS_PER_BITMAP, i);
-            i < BITS_PER_BITMAP;
-            i = find_next_bit(entry->bitmap, BITS_PER_BITMAP, i + 1)) {
+       for_each_set_bit_from(i, entry->bitmap, BITS_PER_BITMAP) {
                next_zero = find_next_zero_bit(entry->bitmap,
                                               BITS_PER_BITMAP, i);
                if (next_zero - i >= min_bits) {