[PATCH, RFC] mkfs: collapse redundant logic in custom_alloc_extent()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



It looks to me like the logic in these two if statements are
overlapping.

The test for flags & BTRFS_BLOCK_GROUP_SYSTEM in the 2nd case
should never get triggered, because it would have triggered
on the first case, right?

And since the actions are identical in both cases, this can be
collapsed into one.

Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
---

p.s.

Having done that, I now look at the nearly identical
custom_alloc_extent() copy in convert.c, and wonder if it's
intentional that the convert copy does not care about 
BTRFS_BLOCK_GROUP_METADATA, but mkfs does?  I'm not quite
sure what's going on there.

Thanks,
-Eric

diff --git a/mkfs.c b/mkfs.c
index ca850d9..5d77428 100644
--- a/mkfs.c
+++ b/mkfs.c
@@ -635,14 +635,10 @@ static int custom_alloc_extent(struct btrfs_root *root, u64 num_bytes,
 
 		cache = btrfs_lookup_block_group(root->fs_info, start);
 		BUG_ON(!cache);
-		if (cache->flags & BTRFS_BLOCK_GROUP_SYSTEM ||
-		    last > cache->key.objectid + cache->key.offset) {
-			last = cache->key.objectid + cache->key.offset;
-			continue;
-		}
 
 		if (cache->flags & (BTRFS_BLOCK_GROUP_SYSTEM |
-			    BTRFS_BLOCK_GROUP_METADATA)) {
+			    BTRFS_BLOCK_GROUP_METADATA) ||
+		    last > cache->key.objectid + cache->key.offset) {
 			last = cache->key.objectid + cache->key.offset;
 			continue;
 		}

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux