btrfs-progs: Refactor write_tree_block to use btrfs_fs_info

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
master
Qu Wenruo 2017-06-13 17:19:22 +08:00 committed by David Sterba
parent 790b5950f3
commit f85fc6e378
3 changed files with 13 additions and 12 deletions

View File

@ -111,7 +111,7 @@ static int change_header_uuid(struct btrfs_root *root, struct extent_buffer *eb)
write_extent_buffer(eb, fs_info->new_chunk_tree_uuid,
btrfs_header_chunk_tree_uuid(eb),
BTRFS_UUID_SIZE);
ret = write_tree_block(NULL, root, eb);
ret = write_tree_block(NULL, fs_info, eb);
return ret;
}
@ -193,7 +193,7 @@ static int change_device_uuid(struct btrfs_root *root, struct extent_buffer *eb,
write_extent_buffer(eb, fs_info->new_fsid,
(unsigned long)btrfs_device_fsid(di),
BTRFS_FSID_SIZE);
ret = write_tree_block(NULL, root, eb);
ret = write_tree_block(NULL, fs_info, eb);
return ret;
}
@ -251,7 +251,7 @@ static int change_fsid_prepare(struct btrfs_fs_info *fs_info)
write_extent_buffer(tree_root->node, fs_info->new_chunk_tree_uuid,
btrfs_header_chunk_tree_uuid(tree_root->node),
BTRFS_UUID_SIZE);
return write_tree_block(NULL, tree_root, tree_root->node);
return write_tree_block(NULL, fs_info, tree_root->node);
}
static int change_fsid_done(struct btrfs_fs_info *fs_info)

View File

@ -449,12 +449,12 @@ int write_and_map_eb(struct btrfs_fs_info *fs_info, struct extent_buffer *eb)
}
int write_tree_block(struct btrfs_trans_handle *trans,
struct btrfs_root *root,
struct btrfs_fs_info *fs_info,
struct extent_buffer *eb)
{
if (check_tree_block(root->fs_info, eb)) {
print_tree_block_error(root->fs_info, eb,
check_tree_block(root->fs_info, eb));
if (check_tree_block(fs_info, eb)) {
print_tree_block_error(fs_info, eb,
check_tree_block(fs_info, eb));
BUG();
}
@ -462,9 +462,9 @@ int write_tree_block(struct btrfs_trans_handle *trans,
BUG();
btrfs_set_header_flag(eb, BTRFS_HEADER_FLAG_WRITTEN);
csum_tree_block(root->fs_info, eb, 0);
csum_tree_block(fs_info, eb, 0);
return write_and_map_eb(root->fs_info, eb);
return write_and_map_eb(fs_info, eb);
}
void btrfs_setup_root(struct btrfs_root *root, struct btrfs_fs_info *fs_info,
@ -548,8 +548,9 @@ static int __commit_transaction(struct btrfs_trans_handle *trans,
{
u64 start;
u64 end;
struct btrfs_fs_info *fs_info = root->fs_info;
struct extent_buffer *eb;
struct extent_io_tree *tree = &root->fs_info->extent_cache;
struct extent_io_tree *tree = &fs_info->extent_cache;
int ret;
while(1) {
@ -560,7 +561,7 @@ static int __commit_transaction(struct btrfs_trans_handle *trans,
while(start <= end) {
eb = find_first_extent_buffer(tree, start);
BUG_ON(!eb || eb->start != start);
ret = write_tree_block(trans, root, eb);
ret = write_tree_block(trans, fs_info, eb);
BUG_ON(ret);
start += eb->len;
clear_extent_buffer_dirty(eb);

View File

@ -189,7 +189,7 @@ int csum_tree_block_size(struct extent_buffer *buf, u16 csum_sectorsize,
int verify_tree_block_csum_silent(struct extent_buffer *buf, u16 csum_size);
int btrfs_read_buffer(struct extent_buffer *buf, u64 parent_transid);
int write_tree_block(struct btrfs_trans_handle *trans,
struct btrfs_root *root,
struct btrfs_fs_info *fs_info,
struct extent_buffer *eb);
int write_and_map_eb(struct btrfs_fs_info *fs_info, struct extent_buffer *eb);