On 3/28/15 1:55 AM, Peter Zijlstra wrote:
@@ -761,6 +762,11 @@ void perf_evsel__config(struct perf_evse
                attr->disabled = 0;
                attr->enable_on_exec = 0;
        }
+
+       if (opts->clockid >= 0) {
+               attr->use_clockid = 1;
+               attr->clockid = opts->clockid;
+       }
  }

One more: you need to set attr->clockid to -1 if use_clockid is not set so that the analysis side knows whether attr->clockid was used. Otherwise it defaults to 0 == CLOCK_REALTIME which is misleading.


diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index 1abf6919b8a2..27679ab38511 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -766,7 +766,8 @@ void perf_evsel__config(struct perf_evsel *evsel, struct record_opts *opts)
    if (opts->clockid >= 0) {
        attr->use_clockid = 1;
        attr->clockid = opts->clockid;
-   }
+   } else
+       attr->clockid = -1;
 }


Dumping the setting in the header is useful as well:

diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
index fb432153e2aa..40bc8d010fcb 100644
--- a/tools/perf/util/header.c
+++ b/tools/perf/util/header.c
@@ -1098,6 +1098,7 @@ static void print_event_desc(struct perf_header *ph, int fd, FILE *fp)
            }
            fprintf(fp, " }");
        }
+       fprintf(fp, ", clockid = %d", evsel->attr.clockid);

        fputc('\n', fp);
    }
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to