perf report: Adjust sample type validation for synthesized branch stacks

perf report looks at event sample types to determine if branch stacks
have been sampled.  Adjust the validation to know about instruction
tracing options.

This change allows the use of the -b option which otherwise would
complain with an error like:

	Error:
	Selected -b but no branch data. Did you call perf record without -b?
	# To display the perf.data header info,
	# please use --header/--header-only options.
	#

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Link: http://lkml.kernel.org/r/1443186956-18718-10-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Adrian Hunter 2015-09-25 16:15:40 +03:00 коммит произвёл Arnaldo Carvalho de Melo
Родитель 601897b54c
Коммит c7eced63f2
1 изменённых файлов: 3 добавлений и 0 удалений

Просмотреть файл

@ -220,6 +220,9 @@ static int report__setup_sample_type(struct report *rep)
!session->itrace_synth_opts->set)) !session->itrace_synth_opts->set))
sample_type |= PERF_SAMPLE_CALLCHAIN; sample_type |= PERF_SAMPLE_CALLCHAIN;
if (session->itrace_synth_opts->last_branch)
sample_type |= PERF_SAMPLE_BRANCH_STACK;
if (!is_pipe && !(sample_type & PERF_SAMPLE_CALLCHAIN)) { if (!is_pipe && !(sample_type & PERF_SAMPLE_CALLCHAIN)) {
if (sort__has_parent) { if (sort__has_parent) {
ui__error("Selected --sort parent, but no " ui__error("Selected --sort parent, but no "