[PATCH] btrfs: scrub: initialize variable explicitly

Ou Shixiong posted 1 patch 2 years, 8 months ago
fs/btrfs/scrub.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] btrfs: scrub: initialize variable explicitly
Posted by Ou Shixiong 2 years, 8 months ago

Fix error of
error: \ufffd\ufffd\ufffdret\ufffd\ufffd\ufffd may be used uninitialized in this function [-Werror=maybe-uninitialized]

Signed-off-by: Ou Shixiong <oushixiong@kylinos.cn>
---
 fs/btrfs/scrub.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
index 28caad17ccc7..0d5c87c52c33 100644
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
@@ -1962,7 +1962,7 @@ static int scrub_simple_mirror(struct scrub_ctx *sctx,
 	/* An artificial limit, inherit from old scrub behavior */
 	struct btrfs_path path = { 0 };
 	u64 cur_logical = logical_start;
-	int ret;
+	int ret = 0;
 
 	/* The range must be inside the bg */
 	ASSERT(logical_start >= bg->start && logical_end <= bg->start + bg->length);
-- 
2.25.1

Content-type: Text/plain

No virus found
		Checked by Hillstone Network AntiVirus
Re: [PATCH] btrfs: scrub: initialize variable explicitly
Posted by Qu Wenruo 2 years, 8 months ago

On 2023/6/8 10:49, Ou Shixiong wrote:
>
> Fix error of
> error: ‘ret’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
>
> Signed-off-by: Ou Shixiong <oushixiong@kylinos.cn>

Not again.

Please explain how @ret can be uninitialized, and your toolchain version.

To me, this looks like a false alert, and it's possible your toolchain
is out of date or lacks certain backports.

Thanks,
Qu
> ---
>   fs/btrfs/scrub.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
> index 28caad17ccc7..0d5c87c52c33 100644
> --- a/fs/btrfs/scrub.c
> +++ b/fs/btrfs/scrub.c
> @@ -1962,7 +1962,7 @@ static int scrub_simple_mirror(struct scrub_ctx *sctx,
>   	/* An artificial limit, inherit from old scrub behavior */
>   	struct btrfs_path path = { 0 };
>   	u64 cur_logical = logical_start;
> -	int ret;
> +	int ret = 0;
>
>   	/* The range must be inside the bg */
>   	ASSERT(logical_start >= bg->start && logical_end <= bg->start + bg->length);
>
>
> Content-type: Text/plain
>
> No virus found
> 		Checked by Hillstone Network AntiVirus
Re: [PATCH] btrfs: scrub: initialize variable explicitly
Posted by David Sterba 2 years, 8 months ago
On Thu, Jun 08, 2023 at 01:18:20PM +0800, Qu Wenruo wrote:
> 
> 
> On 2023/6/8 10:49, Ou Shixiong wrote:
> >
> > Fix error of
> > error: ‘ret’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
> >
> > Signed-off-by: Ou Shixiong <oushixiong@kylinos.cn>
> 
> Not again.
> 
> Please explain how @ret can be uninitialized, and your toolchain version.
> 
> To me, this looks like a false alert, and it's possible your toolchain
> is out of date or lacks certain backports.

Yeah, for obvious false altert warnings at least we need to know the
compiler, version and architecture.