mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 12:42:02 +00:00
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: Geert Uytterhoeven <geert@linux-m68k.org> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
d3c6be6fda
commit
bc931c0ef8
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user