Btrfs: fix use-after-free bug during umount
[cascardo/linux.git] / fs / btrfs / disk-io.c
index bdaa092..7c66c23 100644 (file)
@@ -3512,10 +3512,10 @@ int close_ctree(struct btrfs_root *root)
                       percpu_counter_sum(&fs_info->delalloc_bytes));
        }
 
-       free_root_pointers(fs_info, 1);
-
        btrfs_free_block_groups(fs_info);
 
+       free_root_pointers(fs_info, 1);
+
        del_fs_roots(fs_info);
 
        iput(fs_info->btree_inode);