Message ID | 20200206093238.203984-1-kuhn.chenqun@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/plugin: prevent uninitialized warning | expand |
On 06/02/2020 10.32, kuhn.chenqun@huawei.com wrote: > From: Chen Qun <kuhn.chenqun@huawei.com> > > According to the glibc function requirements, we need initialise > the variable. Otherwise there will be compilation warnings: > > glib-autocleanups.h:28:3: warning: ‘out’ may be > used uninitialized in this function [-Wmaybe-uninitialized] > g_free (*pp); > ^~~~~~~~~~~~ > > Reported-by: Euler Robot <euler.robot@huawei.com> > Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> > --- > tests/plugin/bb.c | 2 +- > tests/plugin/insn.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c > index f30bea08dc..8b9da23a04 100644 > --- a/tests/plugin/bb.c > +++ b/tests/plugin/bb.c > @@ -22,7 +22,7 @@ static bool do_inline; > > static void plugin_exit(qemu_plugin_id_t id, void *p) > { > - g_autofree gchar *out; > + g_autofree gchar *out = NULL; > out = g_strdup_printf("bb's: %" PRIu64", insns: %" PRIu64 "\n", > bb_count, insn_count); > qemu_plugin_outs(out); > diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c > index 0a8f5a0000..c83b1c0157 100644 > --- a/tests/plugin/insn.c > +++ b/tests/plugin/insn.c > @@ -44,7 +44,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) > > static void plugin_exit(qemu_plugin_id_t id, void *p) > { > - g_autofree gchar *out; > + g_autofree gchar *out = NULL; > out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); > qemu_plugin_outs(out); > } Just a matter of taste, but I think in these simple cases, it would be nicer to put everything in one line, e.g.: g_autofree gchar *out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); Anyway, Reviewed-by: Thomas Huth <thuth@redhat.com>
kuhn.chenqun@huawei.com writes: > From: Chen Qun <kuhn.chenqun@huawei.com> > > According to the glibc function requirements, we need initialise > the variable. Otherwise there will be compilation warnings: > > glib-autocleanups.h:28:3: warning: ‘out’ may be > used uninitialized in this function [-Wmaybe-uninitialized] > g_free (*pp); > ^~~~~~~~~~~~ > > Reported-by: Euler Robot <euler.robot@huawei.com> > Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> Queued to plugins/next with Thomas' single line suggestion, thanks. > --- > tests/plugin/bb.c | 2 +- > tests/plugin/insn.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c > index f30bea08dc..8b9da23a04 100644 > --- a/tests/plugin/bb.c > +++ b/tests/plugin/bb.c > @@ -22,7 +22,7 @@ static bool do_inline; > > static void plugin_exit(qemu_plugin_id_t id, void *p) > { > - g_autofree gchar *out; > + g_autofree gchar *out = NULL; > out = g_strdup_printf("bb's: %" PRIu64", insns: %" PRIu64 "\n", > bb_count, insn_count); > qemu_plugin_outs(out); > diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c > index 0a8f5a0000..c83b1c0157 100644 > --- a/tests/plugin/insn.c > +++ b/tests/plugin/insn.c > @@ -44,7 +44,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) > > static void plugin_exit(qemu_plugin_id_t id, void *p) > { > - g_autofree gchar *out; > + g_autofree gchar *out = NULL; > out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); > qemu_plugin_outs(out); > }
>-----Original Message----- >From: Alex Bennée [mailto:alex.bennee@linaro.org] >Sent: Thursday, February 6, 2020 8:46 PM >To: Chenqun (kuhn) <kuhn.chenqun@huawei.com> >Cc: qemu-devel@nongnu.org; Zhanghailiang ><zhang.zhanghailiang@huawei.com>; qemu-trivial@nongnu.org; >richard.henderson@linaro.org >Subject: Re: [PATCH] tests/plugin: prevent uninitialized warning > > >kuhn.chenqun@huawei.com writes: > >> From: Chen Qun <kuhn.chenqun@huawei.com> >> >> According to the glibc function requirements, we need initialise the >> variable. Otherwise there will be compilation warnings: >> >> glib-autocleanups.h:28:3: warning: ‘out’ may be used uninitialized in >> this function [-Wmaybe-uninitialized] >> g_free (*pp); >> ^~~~~~~~~~~~ >> >> Reported-by: Euler Robot <euler.robot@huawei.com> >> Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> > >Queued to plugins/next with Thomas' single line suggestion, thanks. Thank you! By the way, what is plugins/next connection address? > >> --- >> tests/plugin/bb.c | 2 +- >> tests/plugin/insn.c | 2 +- >> 2 files changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c index >> f30bea08dc..8b9da23a04 100644 >> --- a/tests/plugin/bb.c >> +++ b/tests/plugin/bb.c >> @@ -22,7 +22,7 @@ static bool do_inline; >> >> static void plugin_exit(qemu_plugin_id_t id, void *p) { >> - g_autofree gchar *out; >> + g_autofree gchar *out = NULL; >> out = g_strdup_printf("bb's: %" PRIu64", insns: %" PRIu64 "\n", >> bb_count, insn_count); >> qemu_plugin_outs(out); >> diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c index >> 0a8f5a0000..c83b1c0157 100644 >> --- a/tests/plugin/insn.c >> +++ b/tests/plugin/insn.c >> @@ -44,7 +44,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, >> struct qemu_plugin_tb *tb) >> >> static void plugin_exit(qemu_plugin_id_t id, void *p) { >> - g_autofree gchar *out; >> + g_autofree gchar *out = NULL; >> out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); >> qemu_plugin_outs(out); >> } > > >-- >Alex Bennée
Chenqun (kuhn) <kuhn.chenqun@huawei.com> writes: >>-----Original Message----- >>From: Alex Bennée [mailto:alex.bennee@linaro.org] >>Sent: Thursday, February 6, 2020 8:46 PM >>To: Chenqun (kuhn) <kuhn.chenqun@huawei.com> >>Cc: qemu-devel@nongnu.org; Zhanghailiang >><zhang.zhanghailiang@huawei.com>; qemu-trivial@nongnu.org; >>richard.henderson@linaro.org >>Subject: Re: [PATCH] tests/plugin: prevent uninitialized warning >> >> >>kuhn.chenqun@huawei.com writes: >> >>> From: Chen Qun <kuhn.chenqun@huawei.com> >>> >>> According to the glibc function requirements, we need initialise the >>> variable. Otherwise there will be compilation warnings: >>> >>> glib-autocleanups.h:28:3: warning: ‘out’ may be used uninitialized in >>> this function [-Wmaybe-uninitialized] >>> g_free (*pp); >>> ^~~~~~~~~~~~ >>> >>> Reported-by: Euler Robot <euler.robot@huawei.com> >>> Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> >> >>Queued to plugins/next with Thomas' single line suggestion, thanks. > > Thank you! > By the way, what is plugins/next connection address? My tree is on github: https://github.com/stsquad/qemu/tree/plugins/next > >> >>> --- >>> tests/plugin/bb.c | 2 +- >>> tests/plugin/insn.c | 2 +- >>> 2 files changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c index >>> f30bea08dc..8b9da23a04 100644 >>> --- a/tests/plugin/bb.c >>> +++ b/tests/plugin/bb.c >>> @@ -22,7 +22,7 @@ static bool do_inline; >>> >>> static void plugin_exit(qemu_plugin_id_t id, void *p) { >>> - g_autofree gchar *out; >>> + g_autofree gchar *out = NULL; >>> out = g_strdup_printf("bb's: %" PRIu64", insns: %" PRIu64 "\n", >>> bb_count, insn_count); >>> qemu_plugin_outs(out); >>> diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c index >>> 0a8f5a0000..c83b1c0157 100644 >>> --- a/tests/plugin/insn.c >>> +++ b/tests/plugin/insn.c >>> @@ -44,7 +44,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, >>> struct qemu_plugin_tb *tb) >>> >>> static void plugin_exit(qemu_plugin_id_t id, void *p) { >>> - g_autofree gchar *out; >>> + g_autofree gchar *out = NULL; >>> out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); >>> qemu_plugin_outs(out); >>> } >> >> >>-- >>Alex Bennée
diff --git a/tests/plugin/bb.c b/tests/plugin/bb.c index f30bea08dc..8b9da23a04 100644 --- a/tests/plugin/bb.c +++ b/tests/plugin/bb.c @@ -22,7 +22,7 @@ static bool do_inline; static void plugin_exit(qemu_plugin_id_t id, void *p) { - g_autofree gchar *out; + g_autofree gchar *out = NULL; out = g_strdup_printf("bb's: %" PRIu64", insns: %" PRIu64 "\n", bb_count, insn_count); qemu_plugin_outs(out); diff --git a/tests/plugin/insn.c b/tests/plugin/insn.c index 0a8f5a0000..c83b1c0157 100644 --- a/tests/plugin/insn.c +++ b/tests/plugin/insn.c @@ -44,7 +44,7 @@ static void vcpu_tb_trans(qemu_plugin_id_t id, struct qemu_plugin_tb *tb) static void plugin_exit(qemu_plugin_id_t id, void *p) { - g_autofree gchar *out; + g_autofree gchar *out = NULL; out = g_strdup_printf("insns: %" PRIu64 "\n", insn_count); qemu_plugin_outs(out); }