projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
641556c
)
perf evlist: Check that there is a thread_map when preparing a workload
author
Arnaldo Carvalho de Melo
<
[email protected]
>
Fri, 10 Oct 2014 17:29:49 +0000
(14:29 -0300)
committer
Arnaldo Carvalho de Melo
<
[email protected]
>
Tue, 14 Oct 2014 20:32:53 +0000
(17:32 -0300)
The perf_evlist__prepare_workload expects a thread map to be in place
so that it can store the pid of the workload being started, so check it
and tell the developer about it instead of segfaulting.
Cc: Adrian Hunter <
[email protected]
>
Cc: Borislav Petkov <
[email protected]
>
Cc: David Ahern <
[email protected]
>
Cc: Don Zickus <
[email protected]
>
Cc: Frederic Weisbecker <
[email protected]
>
Cc: Jean Pihet <
[email protected]
>
Cc: Jiri Olsa <
[email protected]
>
Cc: Mike Galbraith <
[email protected]
>
Cc: Namhyung Kim <
[email protected]
>
Cc: Paul Mackerras <
[email protected]
>
Cc: Peter Zijlstra <
[email protected]
>
Cc: Stephane Eranian <
[email protected]
>
Link:
http://lkml.kernel.org/n/
[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <
[email protected]
>
tools/perf/util/evlist.c
patch
|
blob
|
history
diff --git
a/tools/perf/util/evlist.c
b/tools/perf/util/evlist.c
index 3cebc9a8d52e232e9dafe13dd2b8cf2b0dcd613d..5fc7bd42c80368b6c1ee49f873635068f97fe4b1 100644
(file)
--- a/
tools/perf/util/evlist.c
+++ b/
tools/perf/util/evlist.c
@@
-1276,8
+1276,14
@@
int perf_evlist__prepare_workload(struct perf_evlist *evlist, struct target *tar
sigaction(SIGUSR1, &act, NULL);
}
- if (target__none(target))
+ if (target__none(target)) {
+ if (evlist->threads == NULL) {
+ fprintf(stderr, "FATAL: evlist->threads need to be set at this point (%s:%d).\n",
+ __func__, __LINE__);
+ goto out_close_pipes;
+ }
evlist->threads->map[0] = evlist->workload.pid;
+ }
close(child_ready_pipe[1]);
close(go_pipe[0]);