btrfs: switch order of unlocks of space_info and bg in do_trimming()
authorSu Yue <suy.fnst@cn.fujitsu.com>
Wed, 28 Nov 2018 03:21:12 +0000 (11:21 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 1 Jul 2019 11:34:55 +0000 (13:34 +0200)
In function do_trimming(), block_group->lock should be unlocked first,
as the locks should be released in the reverse order. This does not
cause problems but should follow the best practices.

Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Su Yue <suy.fnst@cn.fujitsu.com>
Reviewed-by: David Sterba <dsterba@suse.com>
[ update changelog ]
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/free-space-cache.c

index f74dc259307b69af0660ac3080c39e103b21a948..9a76e7671938b71680d2acf341f00931e728483a 100644 (file)
@@ -3166,8 +3166,8 @@ static int do_trimming(struct btrfs_block_group_cache *block_group,
                        space_info->bytes_readonly += reserved_bytes;
                block_group->reserved -= reserved_bytes;
                space_info->bytes_reserved -= reserved_bytes;
-               spin_unlock(&space_info->lock);
                spin_unlock(&block_group->lock);
+               spin_unlock(&space_info->lock);
        }
 
        return ret;