perf bench: Fix segfault at the end of an 'all' execution
authorRamkumar Ramachandra <artagnon@gmail.com>
Thu, 27 Mar 2014 23:50:19 +0000 (19:50 -0400)
committerJiri Olsa <jolsa@redhat.com>
Mon, 14 Apr 2014 10:55:53 +0000 (12:55 +0200)
At the end of

  $ perf bench all

the program segfaults because it attempts to dereference a NULL
pointer. Fix this fault.

Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/1395964219-22173-4-git-send-email-artagnon@gmail.com
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
tools/perf/builtin-bench.c

index f600b74..1e6e777 100644 (file)
@@ -86,7 +86,7 @@ static struct collection collections[] = {
 
 /* Iterate over all benchmarks within a collection: */
 #define for_each_bench(coll, bench) \
-       for (bench = coll->benchmarks; bench->name; bench++)
+       for (bench = coll->benchmarks; bench && bench->name; bench++)
 
 static void dump_benchmarks(struct collection *coll)
 {