perf record: Move sb_evlist to 'struct record'
authorArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 24 Apr 2020 13:24:04 +0000 (10:24 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 5 May 2020 19:35:28 +0000 (16:35 -0300)
Where state related to a 'perf record' session is grouped.

Acked-by: Jiri Olsa <jolsa@redhat.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Song Liu <songliubraving@fb.com>
Link: http://lore.kernel.org/lkml/20200429131106.27974-2-acme@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-record.c

index bf3a6f7..a6d887d 100644 (file)
@@ -87,6 +87,7 @@ struct record {
        struct auxtrace_record  *itr;
        struct evlist   *evlist;
        struct perf_session     *session;
+       struct evlist           *sb_evlist;
        int                     realtime_prio;
        bool                    no_buildid;
        bool                    no_buildid_set;
@@ -1447,7 +1448,6 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
        struct perf_data *data = &rec->data;
        struct perf_session *session;
        bool disabled = false, draining = false;
-       struct evlist *sb_evlist = NULL;
        int fd;
        float ratio = 0;
 
@@ -1582,9 +1582,9 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
        }
 
        if (!opts->no_bpf_event)
-               bpf_event__add_sb_event(&sb_evlist, &session->header.env);
+               bpf_event__add_sb_event(&rec->sb_evlist, &session->header.env);
 
-       if (perf_evlist__start_sb_thread(sb_evlist, &rec->opts.target)) {
+       if (perf_evlist__start_sb_thread(rec->sb_evlist, &rec->opts.target)) {
                pr_debug("Couldn't start the BPF side band thread:\nBPF programs starting from now on won't be annotatable\n");
                opts->no_bpf_event = true;
        }
@@ -1858,7 +1858,7 @@ out_delete_session:
        perf_session__delete(session);
 
        if (!opts->no_bpf_event)
-               perf_evlist__stop_sb_thread(sb_evlist);
+               perf_evlist__stop_sb_thread(rec->sb_evlist);
        return status;
 }