diff options
-rw-r--r-- | tools/perf/util/evsel.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c index 34344ffa79ca..f2dc91fb87fa 100644 --- a/tools/perf/util/evsel.c +++ b/tools/perf/util/evsel.c | |||
@@ -658,6 +658,14 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts) | |||
658 | attr->mmap_data = track; | 658 | attr->mmap_data = track; |
659 | } | 659 | } |
660 | 660 | ||
661 | /* | ||
662 | * We don't allow user space callchains for function trace | ||
663 | * event, due to issues with page faults while tracing page | ||
664 | * fault handler and its overall trickiness nature. | ||
665 | */ | ||
666 | if (perf_evsel__is_function_event(evsel)) | ||
667 | evsel->attr.exclude_callchain_user = 1; | ||
668 | |||
661 | if (callchain_param.enabled && !evsel->no_aux_samples) | 669 | if (callchain_param.enabled && !evsel->no_aux_samples) |
662 | perf_evsel__config_callgraph(evsel); | 670 | perf_evsel__config_callgraph(evsel); |
663 | 671 | ||