@@ -2112,23 +2112,6 @@ int btrfs_init_new_device(struct btrfs_root *root, char *device_path)
if (seeding_dev) {
mutex_unlock(&uuid_mutex);
up_write(&sb->s_umount);
-
- if (ret) /* transaction commit */
- return ret;
-
- ret = btrfs_relocate_sys_chunks(root);
- if (ret < 0)
- btrfs_error(root->fs_info, ret,
- "Failed to relocate sys chunks after "
- "device initialization. This can be fixed "
- "using the \"btrfs balance\" command.");
- trans = btrfs_attach_transaction(root);
- if (IS_ERR(trans)) {
- if (PTR_ERR(trans) == -ENOENT)
- return 0;
- return PTR_ERR(trans);
- }
- ret = btrfs_commit_transaction(trans, root);
}
return ret;
When we build btrfs on seeding disk, we simply add a disk to provide a RW disk while seeding disk remains RO, as the disk that we're adding is the first rw disk, we need to allocate new metadata chunk and system chunk on it for later udpate use. After all above is done, we don't need to relocate the system chunk again since the relocation even tries to find free space on the added disk, the same disk where we just create our metadata chunk and system chunk. Signed-off-by: Liu Bo <bo.li.liu@oracle.com> --- fs/btrfs/volumes.c | 17 ----------------- 1 files changed, 0 insertions(+), 17 deletions(-)