[PATCH] block: fix build waring

Zhiwei Jiang posted 1 patch 2 years, 10 months ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210613093821.774562-1-elish.jiang@ucloud.cn
block.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] block: fix build waring
Posted by Zhiwei Jiang 2 years, 10 months ago
when i compile this file with some error message
../block.c: In function ‘bdrv_replace_node_common’:
../block.c:4903:9: error: ‘to_cow_parent’ may be used
uninitialized in this function [-Werror=maybe-uninitialized]
         bdrv_remove_filter_or_cow_child(to_cow_parent, tran);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

Signed-off-by: Zhiwei Jiang <elish.jiang@ucloud.cn>
---
 block.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block.c b/block.c
index 3f456892d0..08f29e6b65 100644
--- a/block.c
+++ b/block.c
@@ -4866,7 +4866,7 @@ static int bdrv_replace_node_common(BlockDriverState *from,
     Transaction *tran = tran_new();
     g_autoptr(GHashTable) found = NULL;
     g_autoptr(GSList) refresh_list = NULL;
-    BlockDriverState *to_cow_parent;
+    BlockDriverState *to_cow_parent = NULL;
     int ret;
 
     if (detach_subchain) {
-- 
2.25.1


Re: [PATCH] block: fix build waring
Posted by Peter Maydell 2 years, 10 months ago
On Sun, 13 Jun 2021 at 15:20, Zhiwei Jiang <elish.jiang@ucloud.cn> wrote:
>
> when i compile this file with some error message
> ../block.c: In function ‘bdrv_replace_node_common’:
> ../block.c:4903:9: error: ‘to_cow_parent’ may be used
> uninitialized in this function [-Werror=maybe-uninitialized]
>          bdrv_remove_filter_or_cow_child(to_cow_parent, tran);
>          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors


Could you provide the compiler version when reporting
fails-to-compile issues, please? (This is useful for us
to get an idea of whether the problem is an old compiler
that's not smart enough to figure out that something's not
used uninitialized, or a new compiler that does more checking.)

thanks
-- PMM

Re: [PATCH] block: fix build waring
Posted by elish.jiang 2 years, 10 months ago

                
            
Re: [PATCH] block: fix build waring
Posted by Eric Blake 2 years, 10 months ago
On Sun, Jun 13, 2021 at 05:38:21PM +0800, Zhiwei Jiang wrote:

In the subject, s/waring/warning/

> when i compile this file with some error message
> ../block.c: In function ‘bdrv_replace_node_common’:
> ../block.c:4903:9: error: ‘to_cow_parent’ may be used
> uninitialized in this function [-Werror=maybe-uninitialized]
>          bdrv_remove_filter_or_cow_child(to_cow_parent, tran);
>          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> 
> Signed-off-by: Zhiwei Jiang <elish.jiang@ucloud.cn>
> ---
>  block.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

This looks identical to
https://lists.gnu.org/archive/html/qemu-devel/2021-05/msg01229.html
which has a more complete commit message and is already on Kevin's
tree for an upcoming pull request.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org