Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1308353 > unrolled thread

[patch] Btrfs: clean up an error code in btrfs_init_space_info()

Started byDan Carpenter <dan.carpenter@oracle.com>
First post2016-01-13 13:30 +0100
Last post2016-01-13 19:20 +0100
Articles 3 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [patch] Btrfs: clean up an error code in btrfs_init_space_info() Dan Carpenter <dan.carpenter@oracle.com> - 2016-01-13 13:30 +0100
    Re: [patch] Btrfs: clean up an error code in btrfs_init_space_info() David Sterba <dsterba@suse.cz> - 2016-01-13 14:40 +0100
    Re: [patch] Btrfs: clean up an error code in btrfs_init_space_info() Liu Bo <bo.li.liu@oracle.com> - 2016-01-13 19:20 +0100

#1308353 — [patch] Btrfs: clean up an error code in btrfs_init_space_info()

FromDan Carpenter <dan.carpenter@oracle.com>
Date2016-01-13 13:30 +0100
Subject[patch] Btrfs: clean up an error code in btrfs_init_space_info()
Message-ID<qQsIO-84i-21@gated-at.bofh.it>
If we return 1 here, then the caller treats it as an error and returns
-EINVAL.  It causes a static checker warning to treat positive returns
as an error.

Fixes: 1aba86d67f34 ('Btrfs: fix easily get into ENOSPC in mixed case')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
I would appreciate a little review here.  This patch doesn't change
behavior, but it's possible that we had intended to do something else.

diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
index 60cc139..64649f8e 100644
--- a/fs/btrfs/extent-tree.c
+++ b/fs/btrfs/extent-tree.c
@@ -10586,7 +10586,7 @@ int btrfs_init_space_info(struct btrfs_fs_info *fs_info)
 
 	disk_super = fs_info->super_copy;
 	if (!btrfs_super_root(disk_super))
-		return 1;
+		return -EINVAL;
 
 	features = btrfs_super_incompat_flags(disk_super);
 	if (features & BTRFS_FEATURE_INCOMPAT_MIXED_GROUPS)

[toc] | [next] | [standalone]


#1308417

FromDavid Sterba <dsterba@suse.cz>
Date2016-01-13 14:40 +0100
Message-ID<qQtOy-mT-17@gated-at.bofh.it>
In reply to#1308353
On Wed, Jan 13, 2016 at 03:21:17PM +0300, Dan Carpenter wrote:
> If we return 1 here, then the caller treats it as an error and returns
> -EINVAL.  It causes a static checker warning to treat positive returns
> as an error.
> 
> Fixes: 1aba86d67f34 ('Btrfs: fix easily get into ENOSPC in mixed case')
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
> I would appreciate a little review here.  This patch doesn't change
> behavior, but it's possible that we had intended to do something else.

No, it makes sense to switch it to -EINVAL. Thanks.

Reviewed-by: David Sterba <dsterba@suse.com>

[toc] | [prev] | [next] | [standalone]


#1308705

FromLiu Bo <bo.li.liu@oracle.com>
Date2016-01-13 19:20 +0100
Message-ID<qQybw-3tX-17@gated-at.bofh.it>
In reply to#1308353
On Wed, Jan 13, 2016 at 03:21:17PM +0300, Dan Carpenter wrote:
> If we return 1 here, then the caller treats it as an error and returns
> -EINVAL.  It causes a static checker warning to treat positive returns
> as an error.
> 
> Fixes: 1aba86d67f34 ('Btrfs: fix easily get into ENOSPC in mixed case')
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
> I would appreciate a little review here.  This patch doesn't change
> behavior, but it's possible that we had intended to do something else.
> 
> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
> index 60cc139..64649f8e 100644
> --- a/fs/btrfs/extent-tree.c
> +++ b/fs/btrfs/extent-tree.c
> @@ -10586,7 +10586,7 @@ int btrfs_init_space_info(struct btrfs_fs_info *fs_info)
>  
>  	disk_super = fs_info->super_copy;
>  	if (!btrfs_super_root(disk_super))
> -		return 1;
> +		return -EINVAL;

Thank you for this, Dan.

While we're here, I'd suggest to remove this check as tree_root->node has already been readed from btrfs_super_root().

Thanks,

-liubo

>  
>  	features = btrfs_super_incompat_flags(disk_super);
>  	if (features & BTRFS_FEATURE_INCOMPAT_MIXED_GROUPS)

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web