|
@@ -1600,14 +1600,14 @@ int btrfs_init_fs_root(struct btrfs_root *root)
|
|
|
|
|
|
ret = get_anon_bdev(&root->anon_dev);
|
|
|
if (ret)
|
|
|
- goto free_writers;
|
|
|
+ goto fail;
|
|
|
|
|
|
mutex_lock(&root->objectid_mutex);
|
|
|
ret = btrfs_find_highest_objectid(root,
|
|
|
&root->highest_objectid);
|
|
|
if (ret) {
|
|
|
mutex_unlock(&root->objectid_mutex);
|
|
|
- goto free_root_dev;
|
|
|
+ goto fail;
|
|
|
}
|
|
|
|
|
|
ASSERT(root->highest_objectid <= BTRFS_LAST_FREE_OBJECTID);
|
|
@@ -1615,14 +1615,8 @@ int btrfs_init_fs_root(struct btrfs_root *root)
|
|
|
mutex_unlock(&root->objectid_mutex);
|
|
|
|
|
|
return 0;
|
|
|
-
|
|
|
-free_root_dev:
|
|
|
- free_anon_bdev(root->anon_dev);
|
|
|
-free_writers:
|
|
|
- btrfs_free_subvolume_writers(root->subv_writers);
|
|
|
fail:
|
|
|
- kfree(root->free_ino_ctl);
|
|
|
- kfree(root->free_ino_pinned);
|
|
|
+ /* the caller is responsible to call free_fs_root */
|
|
|
return ret;
|
|
|
}
|
|
|
|