|
From: | Denis V. Lunev |
Subject: | Re: [PATCH 06/21] parallels: refactor path when we need to re-check image in parallels_open |
Date: | Sun, 17 Sep 2023 15:04:07 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.15.1 |
On 9/17/23 13:40, Mike Maslenkin wrote:
This patch generates a warning. On Fri, Sep 15, 2023 at 9:41 PM Denis V. Lunev <den@openvz.org> wrote:More conditions follows thus the check should be more scalable. Signed-off-by: Denis V. Lunev <den@openvz.org> --- block/parallels.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/block/parallels.c b/block/parallels.c index 8f223bfd89..aa29df9f77 100644 --- a/block/parallels.c +++ b/block/parallels.c @@ -1065,7 +1065,7 @@ static int parallels_open(BlockDriverState *bs, QDict *options, int flags, int ret, size, i; int64_t file_nb_sectors, sector; uint32_t data_start; - bool data_off_is_correct; + bool need_check = false; ret = parallels_opts_prealloc(bs, options, errp); if (ret < 0) { @@ -1133,11 +1133,12 @@ static int parallels_open(BlockDriverState *bs, QDict *options, int flags, s->bat_bitmap = (uint32_t *)(s->header + 1); if (le32_to_cpu(ph.inuse) == HEADER_INUSE_MAGIC) { - s->header_unclean = true; + need_check = s->header_unclean = true; } - data_off_is_correct = parallels_test_data_off(s, file_nb_sectors, - &data_start); + need_check = need_check || + !parallels_test_data_off(s, file_nb_sectors, &data_start); +../block/parallels.c:1139:18: warning: variable 'data_start' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized] need_check = need_check || ^~~~~~~~~~ ../block/parallels.c:1142:21: note: uninitialized use occurs here s->data_start = data_start; ^~~~~~~~~~ ../block/parallels.c:1139:18: note: remove the '||' if its condition is always false need_check = need_check || ^~~~~~~~~~~~~ ../block/parallels.c:1067:24: note: initialize the variable 'data_start' to silence this warning uint32_t data_start; ^ = 0 1 warning generated. Regards, Mike.
wow! That is pretty much correct! What compiler/OS you are using :) Den
[Prev in Thread] | Current Thread | [Next in Thread] |