Commit bc931c0e authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by David Sterba
Browse files

btrfs: Refactor count handling in btrfs_unpin_free_ino



With gcc 4.1.2:

    fs/btrfs/inode-map.c: In function ‘btrfs_unpin_free_ino’:
    fs/btrfs/inode-map.c:241: warning: ‘count’ may be used uninitialized in this function

While this warning is a false-positive, it can easily be killed by
refactoring the code.

Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
Reviewed-by: default avatarDavid Sterba <dsterba@suse.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent d3c6be6f
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -244,8 +244,6 @@ void btrfs_unpin_free_ino(struct btrfs_root *root)
		return;

	while (1) {
		bool add_to_ctl = true;

		spin_lock(rbroot_lock);
		n = rb_first(rbroot);
		if (!n) {
@@ -257,15 +255,14 @@ void btrfs_unpin_free_ino(struct btrfs_root *root)
		BUG_ON(info->bitmap); /* Logic error */

		if (info->offset > root->ino_cache_progress)
			add_to_ctl = false;
		else if (info->offset + info->bytes > root->ino_cache_progress)
			count = root->ino_cache_progress - info->offset + 1;
			count = 0;
		else
			count = info->bytes;
			count = min(root->ino_cache_progress - info->offset + 1,
				    info->bytes);

		rb_erase(&info->offset_index, rbroot);
		spin_unlock(rbroot_lock);
		if (add_to_ctl)
		if (count)
			__btrfs_add_free_space(root->fs_info, ctl,
					       info->offset, count);
		kmem_cache_free(btrfs_free_space_cachep, info);