2021-05-08 10:48:03

by Jiapeng Chong

[permalink] [raw]
Subject: [PATCH] btrfs: Remove redundant assignment to ret

Variable ret is set to zero, but this value is never read as it is
overwritten or not used later on, hence it is a redundant assignment
and can be removed.

Clean up the following clang-analyzer warning:

fs/btrfs/extent_io.c:5357:4: warning: Value stored to 'ret' is never
read [clang-analyzer-deadcode.DeadStores].

Reported-by: Abaci Robot <[email protected]>
Signed-off-by: Jiapeng Chong <[email protected]>
---
fs/btrfs/extent_io.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index 074a78a..cea58be 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -5354,7 +5354,6 @@ int extent_fiemap(struct btrfs_inode *inode, struct fiemap_extent_info *fieinfo,
goto out_free;
if (ret)
flags |= FIEMAP_EXTENT_SHARED;
- ret = 0;
}
if (test_bit(EXTENT_FLAG_COMPRESSED, &em->flags))
flags |= FIEMAP_EXTENT_ENCODED;
--
1.8.3.1


2021-05-10 13:51:40

by David Sterba

[permalink] [raw]
Subject: Re: [PATCH] btrfs: Remove redundant assignment to ret

On Sat, May 08, 2021 at 06:38:49PM +0800, Jiapeng Chong wrote:
> Variable ret is set to zero, but this value is never read as it is
> overwritten or not used later on, hence it is a redundant assignment
> and can be removed.
>
> Clean up the following clang-analyzer warning:
>
> fs/btrfs/extent_io.c:5357:4: warning: Value stored to 'ret' is never
> read [clang-analyzer-deadcode.DeadStores].
>
> Reported-by: Abaci Robot <[email protected]>
> Signed-off-by: Jiapeng Chong <[email protected]>
> ---
> fs/btrfs/extent_io.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
> index 074a78a..cea58be 100644
> --- a/fs/btrfs/extent_io.c
> +++ b/fs/btrfs/extent_io.c
> @@ -5354,7 +5354,6 @@ int extent_fiemap(struct btrfs_inode *inode, struct fiemap_extent_info *fieinfo,
> goto out_free;
> if (ret)
> flags |= FIEMAP_EXTENT_SHARED;
> - ret = 0;

This leaves the scope where the value of 'ret' has been used for
something and it's reset to 0 for clarity. This is a pattern that we use
and will not change it just to silence clang analyzer.