tracing: Uninitialized variable in create_tracing_map_fields()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 28 Mar 2018 11:48:15 +0000 (14:48 +0300)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Fri, 6 Apr 2018 12:56:50 +0000 (08:56 -0400)
Smatch complains that idx can be used uninitialized when we check if
(idx < 0).  It has to be the first iteration through the loop and the
HIST_FIELD_FL_STACKTRACE bit has to be clear and the HIST_FIELD_FL_VAR
bit has to be set to reach the bug.

Link: http://lkml.kernel.org/r/20180328114815.GC29050@mwanda
Fixes: 30350d65ac56 ("tracing: Add variable support to hist triggers")
Acked-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
kernel/trace/trace_events_hist.c

index 15ea11c29a51d5cd0e33764485a71dc96af941bf..0d7b3ffbecc2a03a7604509e2f19cdd3df5e4973 100644 (file)
@@ -4458,7 +4458,7 @@ static int create_tracing_map_fields(struct hist_trigger_data *hist_data)
        struct tracing_map *map = hist_data->map;
        struct ftrace_event_field *field;
        struct hist_field *hist_field;
-       int i, idx;
+       int i, idx = 0;
 
        for_each_hist_field(i, hist_data) {
                hist_field = hist_data->fields[i];