Re: [PATCH v9 37/41] btrfs: split alloc_log_tree()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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)



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux