All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning
@ 2021-08-04  0:41 Ian Rogers
  2021-08-04  0:41 ` [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning Ian Rogers
  2021-08-04  0:50 ` [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Steven Rostedt
  0 siblings, 2 replies; 4+ messages in thread
From: Ian Rogers @ 2021-08-04  0:41 UTC (permalink / raw)
  To: linux-trace-devel, Tzvetomir Stoyanov, Steven Rostedt,
	Claire Jensen
  Cc: Ian Rogers

On clang the warning looks like:

src/tracefs-utils.c:473:15: error: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Werror,-Wnon-literal-null-conversion]
        list[size] = '\0';

Signed-off-by: Ian Rogers <irogers@google.com>
---
 src/tracefs-utils.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/tracefs-utils.c b/src/tracefs-utils.c
index 63bb413..a502c2d 100644
--- a/src/tracefs-utils.c
+++ b/src/tracefs-utils.c
@@ -470,7 +470,7 @@ int tracefs_list_pop(char **list)
 	size--;
 	*list = (char *)size;
 	list++;
-	list[size] = '\0';
+	list[size] = NULL;
 	return 0;
 }
 
-- 
2.32.0.554.ge1b32706d8-goog


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning
  2021-08-04  0:41 [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Ian Rogers
@ 2021-08-04  0:41 ` Ian Rogers
  2021-08-04  0:51   ` Steven Rostedt
  2021-08-04  0:50 ` [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Steven Rostedt
  1 sibling, 1 reply; 4+ messages in thread
From: Ian Rogers @ 2021-08-04  0:41 UTC (permalink / raw)
  To: linux-trace-devel, Tzvetomir Stoyanov, Steven Rostedt,
	Claire Jensen
  Cc: Ian Rogers

Warning generated by clang:

src/tracefs-events.c:1046:6: error: variable 'ret' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
        if (!systems)
            ^~~~~~~~
src/tracefs-events.c:1101:9: note: uninitialized use occurs here
        return ret;
               ^~~
src/tracefs-events.c:1046:2: note: remove the 'if' if its condition is always false
        if (!systems)
        ^~~~~~~~~~~~~
src/tracefs-events.c:1038:9: note: initialize the variable 'ret' to silence this warning
        int ret;
               ^
                = 0

Signed-off-by: Ian Rogers <irogers@google.com>
---
 src/tracefs-events.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/tracefs-events.c b/src/tracefs-events.c
index 8d84838..4679926 100644
--- a/src/tracefs-events.c
+++ b/src/tracefs-events.c
@@ -1035,7 +1035,7 @@ static int event_enable_disable(struct tracefs_instance *instance,
 	regex_t system_re, event_re;
 	char **systems;
 	char **events = NULL;
-	int ret;
+	int ret = -1;
 	int s, e;
 
 	/* Handle all events first */
-- 
2.32.0.554.ge1b32706d8-goog


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning
  2021-08-04  0:41 [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Ian Rogers
  2021-08-04  0:41 ` [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning Ian Rogers
@ 2021-08-04  0:50 ` Steven Rostedt
  1 sibling, 0 replies; 4+ messages in thread
From: Steven Rostedt @ 2021-08-04  0:50 UTC (permalink / raw)
  To: Ian Rogers; +Cc: linux-trace-devel, Tzvetomir Stoyanov, Claire Jensen

On Tue,  3 Aug 2021 17:41:08 -0700
Ian Rogers <irogers@google.com> wrote:

> diff --git a/src/tracefs-utils.c b/src/tracefs-utils.c
> index 63bb413..a502c2d 100644
> --- a/src/tracefs-utils.c
> +++ b/src/tracefs-utils.c
> @@ -470,7 +470,7 @@ int tracefs_list_pop(char **list)
>  	size--;
>  	*list = (char *)size;
>  	list++;
> -	list[size] = '\0';
> +	list[size] = NULL;

Regardless of a clang warning, that code was an oops.

Thanks for the fix.

-- Steve


>  	return 0;
>  }
>  

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning
  2021-08-04  0:41 ` [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning Ian Rogers
@ 2021-08-04  0:51   ` Steven Rostedt
  0 siblings, 0 replies; 4+ messages in thread
From: Steven Rostedt @ 2021-08-04  0:51 UTC (permalink / raw)
  To: Ian Rogers; +Cc: linux-trace-devel, Tzvetomir Stoyanov, Claire Jensen

On Tue,  3 Aug 2021 17:41:09 -0700
Ian Rogers <irogers@google.com> wrote:

> Warning generated by clang:
> 
> src/tracefs-events.c:1046:6: error: variable 'ret' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
>         if (!systems)
>             ^~~~~~~~
> src/tracefs-events.c:1101:9: note: uninitialized use occurs here
>         return ret;
>                ^~~
> src/tracefs-events.c:1046:2: note: remove the 'if' if its condition is always false
>         if (!systems)
>         ^~~~~~~~~~~~~
> src/tracefs-events.c:1038:9: note: initialize the variable 'ret' to silence this warning
>         int ret;
>                ^
>                 = 0

That's a legitimate path to have ret returned without being initialized.

I'll add both patches to my next push.

Thanks!

-- Steve


> 
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  src/tracefs-events.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/tracefs-events.c b/src/tracefs-events.c
> index 8d84838..4679926 100644
> --- a/src/tracefs-events.c
> +++ b/src/tracefs-events.c
> @@ -1035,7 +1035,7 @@ static int event_enable_disable(struct tracefs_instance *instance,
>  	regex_t system_re, event_re;
>  	char **systems;
>  	char **events = NULL;
> -	int ret;
> +	int ret = -1;
>  	int s, e;
>  
>  	/* Handle all events first */


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-08-04  0:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-04  0:41 [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Ian Rogers
2021-08-04  0:41 ` [PATCH 2/2] libtracefs: Silence sometimes-uninitialized warning Ian Rogers
2021-08-04  0:51   ` Steven Rostedt
2021-08-04  0:50 ` [PATCH 1/2] libtracefs: Silence non-literal-null-conversion warning Steven Rostedt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.