On Tue, Nov 3, 2020 at 2:06 PM Josef Bacik <josef@xxxxxxxxxxxxxx> wrote: > > On 10/30/20 9:51 AM, Naohiro Aota wrote: > > This is a preparation for the next patch. This commit split > > alloc_log_tree() to allocating tree structure part (remains in > > alloc_log_tree()) and allocating tree node part (moved in > > btrfs_alloc_log_tree_node()). The latter part is also exported to be used > > in the next patch. > > > > Signed-off-by: Johannes Thumshirn <johannes.thumshirn@xxxxxxx> > > Signed-off-by: Naohiro Aota <naohiro.aota@xxxxxxx> > > --- > > fs/btrfs/disk-io.c | 31 +++++++++++++++++++++++++------ > > fs/btrfs/disk-io.h | 2 ++ > > 2 files changed, 27 insertions(+), 6 deletions(-) > > > > diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c > > index 2b30ef8a7034..70885f3d3321 100644 > > --- a/fs/btrfs/disk-io.c > > +++ b/fs/btrfs/disk-io.c > > @@ -1211,7 +1211,6 @@ static struct btrfs_root *alloc_log_tree(struct btrfs_trans_handle *trans, > > struct btrfs_fs_info *fs_info) > > { > > struct btrfs_root *root; > > - struct extent_buffer *leaf; > > > > root = btrfs_alloc_root(fs_info, BTRFS_TREE_LOG_OBJECTID, GFP_NOFS); > > if (!root) > > @@ -1221,6 +1220,14 @@ static struct btrfs_root *alloc_log_tree(struct btrfs_trans_handle *trans, > > root->root_key.type = BTRFS_ROOT_ITEM_KEY; > > root->root_key.offset = BTRFS_TREE_LOG_OBJECTID; > > > > + return root; > > +} > > + > > +int btrfs_alloc_log_tree_node(struct btrfs_trans_handle *trans, > > + struct btrfs_root *root) > > +{ > > + struct extent_buffer *leaf; > > + > > /* > > * DON'T set SHAREABLE bit for log trees. > > * > > @@ -1233,26 +1240,31 @@ static struct btrfs_root *alloc_log_tree(struct btrfs_trans_handle *trans, > > > > leaf = btrfs_alloc_tree_block(trans, root, 0, BTRFS_TREE_LOG_OBJECTID, > > NULL, 0, 0, 0, BTRFS_NESTING_NORMAL); > > - if (IS_ERR(leaf)) { > > - btrfs_put_root(root); > > - return ERR_CAST(leaf); > > - } > > + if (IS_ERR(leaf)) > > + return PTR_ERR(leaf); > > > > root->node = leaf; > > > > btrfs_mark_buffer_dirty(root->node); > > btrfs_tree_unlock(root->node); > > - return root; > > + > > + return 0; > > } > > > > int btrfs_init_log_root_tree(struct btrfs_trans_handle *trans, > > struct btrfs_fs_info *fs_info) > > { > > struct btrfs_root *log_root; > > + int ret; > > > > log_root = alloc_log_tree(trans, fs_info); > > if (IS_ERR(log_root)) > > newline. > > > return PTR_ERR(log_root); > > + ret = btrfs_alloc_log_tree_node(trans, log_root); > > + if (ret) { > > + kfree(log_root); > > btrfs_put_root(log_root); > > > + return ret; > > + } > > newline. Thanks, > > Josef These should've shown up on the patch formatter... was it simply not run, or did the patch formatter not catch it? Best regards, Amy Parker (they/them)