perf record: Fix segfault with --no-mmap-pages
authorDavid Ahern <dsahern@gmail.com>
Tue, 12 Nov 2013 14:46:53 +0000 (07:46 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 12 Nov 2013 19:30:54 +0000 (16:30 -0300)
Adrian reported a segfault when using --no-out-pages:

$ tools/perf/perf record -vv --no-out-pages uname
Segmentation fault (core dumped)

The same occurs with --no-mmap-pages. Fix by checking that str is
non-NULL before parsing it.

Signed-off-by: David Ahern <dsahern@gmail.com>
Reported-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/1384267617-3446-2-git-send-email-dsahern@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/evlist.c

index 99dc58e5dcc3f2b015f02d7e2c3a7fbbdf3b2da0..3960560f873a4078e29a9b4e34b2379ffca4caab 100644 (file)
@@ -719,6 +719,9 @@ int perf_evlist__parse_mmap_pages(const struct option *opt, const char *str,
                { .tag  = 0 },
        };
 
+       if (str == NULL)
+               return -1;
+
        val = parse_tag_value(str, tags);
        if (val != (unsigned long) -1) {
                /* we got file size value */