diff mbox series

plugins: fix -Werror=maybe-uninitialized false-positive

Message ID 20250114104820.2613099-1-marcandre.lureau@redhat.com (mailing list archive)
State New
Headers show
Series plugins: fix -Werror=maybe-uninitialized false-positive | expand

Commit Message

Marc-André Lureau Jan. 14, 2025, 10:48 a.m. UTC
From: Marc-André Lureau <marcandre.lureau@redhat.com>

../contrib/plugins/cache.c:638:9: error: ‘l2_cache’ may be used uninitialized [-Werror=maybe-uninitialized]
  638 |         append_stats_line(rep, l1_dmem_accesses, l1_dmisses,
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Is a false-positive, since cores > 1, so the variable is set in the
above loop.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 contrib/plugins/cache.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Pierrick Bouvier Jan. 14, 2025, 3:59 p.m. UTC | #1
Hi Marc-André,

On 1/14/25 02:48, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
> 
> ../contrib/plugins/cache.c:638:9: error: ‘l2_cache’ may be used uninitialized [-Werror=maybe-uninitialized]
>    638 |         append_stats_line(rep, l1_dmem_accesses, l1_dmisses,
>        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Is a false-positive, since cores > 1, so the variable is set in the
> above loop.
> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
>   contrib/plugins/cache.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
> index 512ef6776b..c2c274cfcd 100644
> --- a/contrib/plugins/cache.c
> +++ b/contrib/plugins/cache.c
> @@ -609,7 +609,7 @@ static int l2_cmp(gconstpointer a, gconstpointer b)
>   static void log_stats(void)
>   {
>       int i;
> -    Cache *icache, *dcache, *l2_cache;
> +    Cache *icache, *dcache, *l2_cache = NULL;
>   
>       g_autoptr(GString) rep = g_string_new("core #, data accesses, data misses,"
>                                             " dmiss rate, insn accesses,"

It does not hurt to initialize it, even though it's a false positive.
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>

Thanks,
Pierrick
Pierrick Bouvier Jan. 14, 2025, 4 p.m. UTC | #2
On 1/14/25 02:48, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
> 
> ../contrib/plugins/cache.c:638:9: error: ‘l2_cache’ may be used uninitialized [-Werror=maybe-uninitialized]
>    638 |         append_stats_line(rep, l1_dmem_accesses, l1_dmisses,
>        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Is a false-positive, since cores > 1, so the variable is set in the
> above loop.
> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
>   contrib/plugins/cache.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
> index 512ef6776b..c2c274cfcd 100644
> --- a/contrib/plugins/cache.c
> +++ b/contrib/plugins/cache.c
> @@ -609,7 +609,7 @@ static int l2_cmp(gconstpointer a, gconstpointer b)
>   static void log_stats(void)
>   {
>       int i;
> -    Cache *icache, *dcache, *l2_cache;
> +    Cache *icache, *dcache, *l2_cache = NULL;
>   
>       g_autoptr(GString) rep = g_string_new("core #, data accesses, data misses,"
>                                             " dmiss rate, insn accesses,"

By the way,

which compiler (version?) are you using?
Just curious to check if we don't have any other false positives in the 
code base with it if it's a newer version.
diff mbox series

Patch

diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c
index 512ef6776b..c2c274cfcd 100644
--- a/contrib/plugins/cache.c
+++ b/contrib/plugins/cache.c
@@ -609,7 +609,7 @@  static int l2_cmp(gconstpointer a, gconstpointer b)
 static void log_stats(void)
 {
     int i;
-    Cache *icache, *dcache, *l2_cache;
+    Cache *icache, *dcache, *l2_cache = NULL;
 
     g_autoptr(GString) rep = g_string_new("core #, data accesses, data misses,"
                                           " dmiss rate, insn accesses,"