btrfs: drop chunk locks at the end of close_ctree
authorDavid Sterba <dsterba@suse.com>
Thu, 22 Jun 2017 01:59:40 +0000 (03:59 +0200)
committerDavid Sterba <dsterba@suse.com>
Wed, 16 Aug 2017 14:12:04 +0000 (16:12 +0200)
The pinned chunks might be left over so we clean them but at this point
of close_ctree, there's noone to race with, the locking can be removed.

Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/disk-io.c

index 57a857142cdaf90f99839373016d7e64e784d1e6..c2d3699a70bdb6b50495c47c7b0cf376be5eff15 100644 (file)
@@ -3944,7 +3944,6 @@ void close_ctree(struct btrfs_fs_info *fs_info)
        __btrfs_free_block_rsv(root->orphan_block_rsv);
        root->orphan_block_rsv = NULL;
 
-       mutex_lock(&fs_info->chunk_mutex);
        while (!list_empty(&fs_info->pinned_chunks)) {
                struct extent_map *em;
 
@@ -3953,7 +3952,6 @@ void close_ctree(struct btrfs_fs_info *fs_info)
                list_del_init(&em->list);
                free_extent_map(em);
        }
-       mutex_unlock(&fs_info->chunk_mutex);
 }
 
 int btrfs_buffer_uptodate(struct extent_buffer *buf, u64 parent_transid,