RE: [PATCH v2] Btrfs: remove unnecessary code of chunk_root assignment in btrfs_read_chunk_tree.

From: Zhao Lei
Date: Tue Sep 06 2016 - 01:19:54 EST


Hi, Sean Fu

> -----Original Message-----
> From: Sean Fu [mailto:fxinrong@xxxxxxxxx]
> Sent: Tuesday, September 06, 2016 11:51 AM
> To: dsterba@xxxxxxxx
> Cc: clm@xxxxxx; anand.jain@xxxxxxxxxx; fdmanana@xxxxxxxx;
> zhaolei@xxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linux-btrfs@xxxxxxxxxxxxxxx; Sean Fu <fxinrong@xxxxxxxxx>
> Subject: [PATCH v2] Btrfs: remove unnecessary code of chunk_root assignment
> in btrfs_read_chunk_tree.
>
> The input argument root is already set with "fs_info->chunk_root".
> "chunk_root = fs_info->chunk_root = btrfs_alloc_root(fs_info)" in caller
> "open_ctree".
> "root->fs_info = fs_infoâ in "btrfs_alloc_root".
>
> Signed-off-by: Sean Fu <fxinrong@xxxxxxxxx>
> ---
> Changes in v2:
> - Renaming root to chunk_root to make it clear.
>
> fs/btrfs/volumes.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
> index 366b335..eb3d04a 100644
> --- a/fs/btrfs/volumes.c
> +++ b/fs/btrfs/volumes.c
> @@ -6591,7 +6591,7 @@ out_short_read:
> return -EIO;
> }
>
> -int btrfs_read_chunk_tree(struct btrfs_root *root)
> +int btrfs_read_chunk_tree(struct btrfs_root *chunk_root)

Maybe you also need to modify function body to make it
pass compile, and the header file also need to be modified.

BTW, Qu Wenruo give us a better way in reply, we
can use fs_info directly.

Thanks
Zhaolei

> {
> struct btrfs_path *path;
> struct extent_buffer *leaf;
> @@ -6600,8 +6600,6 @@ int btrfs_read_chunk_tree(struct btrfs_root *root)
> int ret;
> int slot;
>
> - root = root->fs_info->chunk_root;
> -
> path = btrfs_alloc_path();
> if (!path)
> return -ENOMEM;
> --
> 2.6.2
>