perf record: Replace option --bpf-event with --no-bpf-event
Currently, monitoring of BPF programs through bpf_event is off by default for 'perf record'. To turn it on, the user need to use option "--bpf-event". As BPF gets wider adoption in different subsystems, this option becomes inconvenient. This patch makes bpf_event on by default, and adds option "--no-bpf-event" to turn it off. Since option --bpf-event is not released yet, it is safe to remove it. Signed-off-by: Song Liu <songliubraving@fb.com> Reviewed-by: Jiri Olsa <jolsa@kernel.org> Cc: Alexei Starovoitov <ast@kernel.org> Cc: Daniel Borkmann <daniel@iogearbox.net> Cc: kernel-team@fb.com Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stanislav Fomichev <sdf@google.com> Link: http://lkml.kernel.org/r/20190312053051.2690567-2-songliubraving@fb.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Родитель
d982b33133
Коммит
71184c6ab7
|
@ -1891,7 +1891,7 @@ static struct option __record_options[] = {
|
|||
OPT_BOOLEAN(0, "tail-synthesize", &record.opts.tail_synthesize,
|
||||
"synthesize non-sample events at the end of output"),
|
||||
OPT_BOOLEAN(0, "overwrite", &record.opts.overwrite, "use overwrite mode"),
|
||||
OPT_BOOLEAN(0, "bpf-event", &record.opts.bpf_event, "record bpf events"),
|
||||
OPT_BOOLEAN(0, "no-bpf-event", &record.opts.no_bpf_event, "record bpf events"),
|
||||
OPT_BOOLEAN(0, "strict-freq", &record.opts.strict_freq,
|
||||
"Fail if the specified frequency can't be used"),
|
||||
OPT_CALLBACK('F', "freq", &record.opts, "freq or 'max'",
|
||||
|
|
|
@ -66,7 +66,7 @@ struct record_opts {
|
|||
bool ignore_missing_thread;
|
||||
bool strict_freq;
|
||||
bool sample_id;
|
||||
bool bpf_event;
|
||||
bool no_bpf_event;
|
||||
unsigned int freq;
|
||||
unsigned int mmap_pages;
|
||||
unsigned int auxtrace_mmap_pages;
|
||||
|
|
|
@ -187,7 +187,7 @@ static int perf_event__synthesize_one_bpf_prog(struct perf_tool *tool,
|
|||
}
|
||||
|
||||
/* Synthesize PERF_RECORD_BPF_EVENT */
|
||||
if (opts->bpf_event) {
|
||||
if (!opts->no_bpf_event) {
|
||||
*bpf_event = (struct bpf_event){
|
||||
.header = {
|
||||
.type = PERF_RECORD_BPF_EVENT,
|
||||
|
|
|
@ -1036,7 +1036,7 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts,
|
|||
attr->mmap2 = track && !perf_missing_features.mmap2;
|
||||
attr->comm = track;
|
||||
attr->ksymbol = track && !perf_missing_features.ksymbol;
|
||||
attr->bpf_event = track && opts->bpf_event &&
|
||||
attr->bpf_event = track && !opts->no_bpf_event &&
|
||||
!perf_missing_features.bpf_event;
|
||||
|
||||
if (opts->record_namespaces)
|
||||
|
|
Загрузка…
Ссылка в новой задаче