I've already pulled v3 into btrfs-next, for this I prefer v3. Thanks,
Josef
> On Nov 2, 2013, at 2:24 PM, Rashika Kheria <rashika.kheria@xxxxxxxxx> wrote:
>
> The function free_root_pointers() in disk-io.h contains redundant code.
> Therefore, this patch adds a helper function free_root_extent_buffers()
> to free_root_pointers() to eliminate redundancy
>
> Signed-off-by: Rashika Kheria <rashika.kheria@xxxxxxxxx>
> Reviewed-by: Zach Brown <zab@xxxxxxxxxx>
> Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> ---
>
> This revision fixes the following issues of the previous revision-
> Early return when root is NULL
>
> fs/btrfs/disk-io.c | 60 +++++++++++++++++-----------------------------------
> 1 file changed, 19 insertions(+), 41 deletions(-)
>
> diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
> index 62176ad..f719394 100644
> --- a/fs/btrfs/disk-io.c
> +++ b/fs/btrfs/disk-io.c
> @@ -2013,50 +2013,28 @@ static void btrfs_stop_all_workers(struct btrfs_fs_info *fs_info)
> btrfs_stop_workers(&fs_info->qgroup_rescan_workers);
> }
>
> +static void free_root_extent_buffers(struct btrfs_root *root)
> +{
> + if (!root)
> + return;
> + free_extent_buffer(root->node);
> + free_extent_buffer(root->commit_root);
> + root->node = NULL;
> + root->commit_root = NULL;
> +}
> +
> /* helper to cleanup tree roots */
> static void free_root_pointers(struct btrfs_fs_info *info, int chunk_root)
> {
> - free_extent_buffer(info->tree_root->node);
> - free_extent_buffer(info->tree_root->commit_root);
> - info->tree_root->node = NULL;
> - info->tree_root->commit_root = NULL;
> -
> - if (info->dev_root) {
> - free_extent_buffer(info->dev_root->node);
> - free_extent_buffer(info->dev_root->commit_root);
> - info->dev_root->node = NULL;
> - info->dev_root->commit_root = NULL;
> - }
> - if (info->extent_root) {
> - free_extent_buffer(info->extent_root->node);
> - free_extent_buffer(info->extent_root->commit_root);
> - info->extent_root->node = NULL;
> - info->extent_root->commit_root = NULL;
> - }
> - if (info->csum_root) {
> - free_extent_buffer(info->csum_root->node);
> - free_extent_buffer(info->csum_root->commit_root);
> - info->csum_root->node = NULL;
> - info->csum_root->commit_root = NULL;
> - }
> - if (info->quota_root) {
> - free_extent_buffer(info->quota_root->node);
> - free_extent_buffer(info->quota_root->commit_root);
> - info->quota_root->node = NULL;
> - info->quota_root->commit_root = NULL;
> - }
> - if (info->uuid_root) {
> - free_extent_buffer(info->uuid_root->node);
> - free_extent_buffer(info->uuid_root->commit_root);
> - info->uuid_root->node = NULL;
> - info->uuid_root->commit_root = NULL;
> - }
> - if (chunk_root) {
> - free_extent_buffer(info->chunk_root->node);
> - free_extent_buffer(info->chunk_root->commit_root);
> - info->chunk_root->node = NULL;
> - info->chunk_root->commit_root = NULL;
> - }
> + free_root_extent_buffers(info->tree_root);
> +
> + free_root_extent_buffers(info->dev_root);
> + free_root_extent_buffers(info->extent_root);
> + free_root_extent_buffers(info->csum_root);
> + free_root_extent_buffers(info->quota_root);
> + free_root_extent_buffers(info->uuid_root);
> + if (chunk_root)
> + free_root_extent_buffers(info->chunk_root);
> }
>
> static void del_fs_roots(struct btrfs_fs_info *fs_info)
> --
> 1.7.9.5
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html