[PATCH v2 07/22] block/stream: fix -Werror=maybe-uninitialized false-positives

marcandre.lureau@redhat.com posted 22 patches 4 weeks ago
There is a newer version of this series
[PATCH v2 07/22] block/stream: fix -Werror=maybe-uninitialized false-positives
Posted by marcandre.lureau@redhat.com 4 weeks ago
From: Marc-André Lureau <marcandre.lureau@redhat.com>

../block/stream.c:193:19: error: ‘unfiltered_bs’ may be used uninitialized [-Werror=maybe-uninitialized]
../block/stream.c:176:5: error: ‘len’ may be used uninitialized [-Werror=maybe-uninitialized]
trace/trace-block.h:906:9: error: ‘ret’ may be used uninitialized [-Werror=maybe-uninitialized]

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Acked-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
---
 block/stream.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/block/stream.c b/block/stream.c
index 7031eef12b..9076203193 100644
--- a/block/stream.c
+++ b/block/stream.c
@@ -155,8 +155,8 @@ static void stream_clean(Job *job)
 static int coroutine_fn stream_run(Job *job, Error **errp)
 {
     StreamBlockJob *s = container_of(job, StreamBlockJob, common.job);
-    BlockDriverState *unfiltered_bs;
-    int64_t len;
+    BlockDriverState *unfiltered_bs = NULL;
+    int64_t len = -1;
     int64_t offset = 0;
     int error = 0;
     int64_t n = 0; /* bytes */
@@ -177,7 +177,7 @@ static int coroutine_fn stream_run(Job *job, Error **errp)
 
     for ( ; offset < len; offset += n) {
         bool copy;
-        int ret;
+        int ret = -1;
 
         /* Note that even when no rate limit is applied we need to yield
          * with no pending I/O here so that bdrv_drain_all() returns.
-- 
2.45.2.827.g557ae147e6


Re: [PATCH v2 07/22] block/stream: fix -Werror=maybe-uninitialized false-positives
Posted by Manos Pitsidianakis 3 weeks, 5 days ago
On Tue, 24 Sep 2024 16:05, marcandre.lureau@redhat.com wrote:
>From: Marc-André Lureau <marcandre.lureau@redhat.com>
>
>../block/stream.c:193:19: error: ‘unfiltered_bs’ may be used uninitialized [-Werror=maybe-uninitialized]
>../block/stream.c:176:5: error: ‘len’ may be used uninitialized [-Werror=maybe-uninitialized]
>trace/trace-block.h:906:9: error: ‘ret’ may be used uninitialized [-Werror=maybe-uninitialized]
>
>Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
>Acked-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
>---
> block/stream.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
>diff --git a/block/stream.c b/block/stream.c
>index 7031eef12b..9076203193 100644
>--- a/block/stream.c
>+++ b/block/stream.c
>@@ -155,8 +155,8 @@ static void stream_clean(Job *job)
> static int coroutine_fn stream_run(Job *job, Error **errp)
> {
>     StreamBlockJob *s = container_of(job, StreamBlockJob, common.job);
>-    BlockDriverState *unfiltered_bs;
>-    int64_t len;
>+    BlockDriverState *unfiltered_bs = NULL;
>+    int64_t len = -1;
>     int64_t offset = 0;
>     int error = 0;
>     int64_t n = 0; /* bytes */
>@@ -177,7 +177,7 @@ static int coroutine_fn stream_run(Job *job, Error **errp)
> 
>     for ( ; offset < len; offset += n) {
>         bool copy;
>-        int ret;
>+        int ret = -1;
> 
>         /* Note that even when no rate limit is applied we need to yield
>          * with no pending I/O here so that bdrv_drain_all() returns.
>-- 
>2.45.2.827.g557ae147e6
>
>

Reviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>