perf tools: Move clockid_res_ns under clock struct
authorJiri Olsa <jolsa@kernel.org>
Wed, 5 Aug 2020 09:34:41 +0000 (11:34 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 6 Aug 2020 12:42:20 +0000 (09:42 -0300)
Move the clockid_res_ns struct member to the clock struct, so we have
the clock related stuff in one place.

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Geneviève Bastien <gbastien@versatic.net>
Cc: Ian Rogers <irogers@google.com>
Cc: Jeremie Galarneau <jgalar@efficios.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lore.kernel.org/lkml/20200805093444.314999-5-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-record.c
tools/perf/util/env.h
tools/perf/util/header.c

index b21a876..7d97c8e 100644 (file)
@@ -1566,6 +1566,9 @@ static int record__init_clock(struct record *rec)
        if (!rec->opts.use_clockid)
                return 0;
 
+       if (rec->opts.use_clockid && rec->opts.clockid_res_ns)
+               session->header.env.clock.clockid_res_ns = rec->opts.clockid_res_ns;
+
        session->header.env.clock.clockid = rec->opts.clockid;
 
        if (gettimeofday(&ref_tod, NULL) != 0) {
@@ -1675,9 +1678,6 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
 
        record__init_features(rec);
 
-       if (rec->opts.use_clockid && rec->opts.clockid_res_ns)
-               session->header.env.clockid_res_ns = rec->opts.clockid_res_ns;
-
        if (forks) {
                err = perf_evlist__prepare_workload(rec->evlist, &opts->target,
                                                    argv, data->is_pipe,
index 7218f7d..a129726 100644 (file)
@@ -77,7 +77,6 @@ struct perf_env {
        struct numa_node        *numa_nodes;
        struct memory_node      *memory_nodes;
        unsigned long long       memory_bsize;
-       u64                     clockid_res_ns;
 
        /*
         * bpf_info_lock protects bpf rbtrees. This is needed because the
@@ -105,6 +104,7 @@ struct perf_env {
        struct {
                u64     tod_ns;
                u64     clockid_ns;
+               u64     clockid_res_ns;
                int     clockid;
                /*
                 * enabled is valid for report mode, and is true if above
index eece94c..251faa9 100644 (file)
@@ -892,8 +892,8 @@ static int write_auxtrace(struct feat_fd *ff,
 static int write_clockid(struct feat_fd *ff,
                         struct evlist *evlist __maybe_unused)
 {
-       return do_write(ff, &ff->ph->env.clockid_res_ns,
-                       sizeof(ff->ph->env.clockid_res_ns));
+       return do_write(ff, &ff->ph->env.clock.clockid_res_ns,
+                       sizeof(ff->ph->env.clock.clockid_res_ns));
 }
 
 static int write_clock_data(struct feat_fd *ff,
@@ -1581,7 +1581,7 @@ static void print_cpu_topology(struct feat_fd *ff, FILE *fp)
 static void print_clockid(struct feat_fd *ff, FILE *fp)
 {
        fprintf(fp, "# clockid frequency: %"PRIu64" MHz\n",
-               ff->ph->env.clockid_res_ns * 1000);
+               ff->ph->env.clock.clockid_res_ns * 1000);
 }
 
 static void print_clock_data(struct feat_fd *ff, FILE *fp)
@@ -2810,7 +2810,7 @@ out:
 static int process_clockid(struct feat_fd *ff,
                           void *data __maybe_unused)
 {
-       if (do_read_u64(ff, &ff->ph->env.clockid_res_ns))
+       if (do_read_u64(ff, &ff->ph->env.clock.clockid_res_ns))
                return -1;
 
        return 0;