mirror of https://gitee.com/openkylin/linux.git
perf evsel: Disable write_backward for leader sampling group events
.. and other related fields that do not need to be enabled for events that have sampling leader. It fixes the perf top usage Ingo reported broken: # perf top -e '{cycles,msr/aperf/}:S' The 'msr/aperf/' event is configured for write_back sampling, which is not allowed by the MSR PMU, so it fails to create the event. Adjusting related attr test. Reported-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Jiri Olsa <jolsa@kernel.org> Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/20180423090823.32309-6-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
9a4a931ce8
commit
e9add8bac6
|
@ -35,3 +35,6 @@ inherit=0
|
||||||
# sampling disabled
|
# sampling disabled
|
||||||
sample_freq=0
|
sample_freq=0
|
||||||
sample_period=0
|
sample_period=0
|
||||||
|
freq=0
|
||||||
|
write_backward=0
|
||||||
|
sample_id_all=0
|
||||||
|
|
|
@ -930,8 +930,11 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts,
|
||||||
* than leader in case leader 'leads' the sampling.
|
* than leader in case leader 'leads' the sampling.
|
||||||
*/
|
*/
|
||||||
if ((leader != evsel) && leader->sample_read) {
|
if ((leader != evsel) && leader->sample_read) {
|
||||||
attr->sample_freq = 0;
|
attr->freq = 0;
|
||||||
attr->sample_period = 0;
|
attr->sample_freq = 0;
|
||||||
|
attr->sample_period = 0;
|
||||||
|
attr->write_backward = 0;
|
||||||
|
attr->sample_id_all = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (opts->no_samples)
|
if (opts->no_samples)
|
||||||
|
|
Loading…
Reference in New Issue