[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3] multi-process: Initialize variables declared with g_auto*
From: |
Stefan Hajnoczi |
Subject: |
Re: [PATCH v3] multi-process: Initialize variables declared with g_auto* |
Date: |
Mon, 26 Apr 2021 14:30:51 +0100 |
On Tue, Apr 06, 2021 at 10:00:03PM +0800, Zenghui Yu wrote:
> [+Stefan]
>
> On 2021/3/12 19:21, Zenghui Yu wrote:
> > Quote docs/devel/style.rst (section "Automatic memory deallocation"):
> >
> > * Variables declared with g_auto* MUST always be initialized,
> > otherwise the cleanup function will use uninitialized stack memory
> >
> > Initialize @name properly to get rid of the compilation error (using
> > gcc-7.3.0 on CentOS):
> >
> > ../hw/remote/proxy.c: In function 'pci_proxy_dev_realize':
> > /usr/include/glib-2.0/glib/glib-autocleanups.h:28:3: error: 'name' may be
> > used uninitialized in this function [-Werror=maybe-uninitialized]
> > g_free (*pp);
> > ^~~~~~~~~~~~
> > ../hw/remote/proxy.c:350:30: note: 'name' was declared here
> > g_autofree char *name;
> > ^~~~
> >
> > Signed-off-by: Zenghui Yu <yuzenghui@huawei.com>
> > Reviewed-by: Jagannathan Raman <jag.raman@oracle.com>
> > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Message-Id: <20210312112143.1369-1-yuzenghui@huawei.com>
>
> Ping for 6.0, thanks.
I'm sorry I missed this email! QEMU 6.0.0-rc4 has already been tagged
and the final release is tomorrow. Only critical patches are applied at
this stage of the release process.
My understanding is that this patch silences a gcc 7.3.0 warning. The
warning is bogus since both code paths always initialize the variable.
You should still be able to compile successfully using ./configure
--disable-werror.
I guess this issue was hit on CentOS 7 since CentOS 8 ships a newer
version of gcc. Debian stable also ships a newer gcc. That probably
explains why this issue has not been encountered by others. I don't
think the patch is absolutely critical for QEMU 6.0 although I regret
not having merged it earlier in the release process. Sorry again.
I have queued this patch for QEMU 6.1 and CCed it for -stable for
inclusion in QEMU 6.0.1.
If you think this patch is critical for QEMU 6.0, please get in contact
with myself and Peter Maydel ("pm215"), preferrably on #qemu
irc.oftc.net IRC as soon as possible.
Thanks, applied to my block-next tree:
https://gitlab.com/stefanha/qemu/commits/block-next
Stefan
signature.asc
Description: PGP signature