diff mbox series

tests/plugin: prevent uninitialized warning

Message ID 20200206093238.203984-1-kuhn.chenqun@huawei.com
State New
Headers show
Series tests/plugin: prevent uninitialized warning | expand

Commit Message

Chen Qun Feb. 6, 2020, 9:32 a.m. UTC
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(-)

Comments

Thomas Huth Feb. 6, 2020, 10:19 a.m. UTC | #1
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>
Alex Bennée Feb. 6, 2020, 12:45 p.m. UTC | #2
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);
>  }
Chen Qun Feb. 6, 2020, 1:25 p.m. UTC | #3
>-----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
Alex Bennée Feb. 6, 2020, 4:22 p.m. UTC | #4
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 mbox series

Patch

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);
 }