Signed-off-by: Andrew Vagin <ava...@openvz.org>
---
 tools/perf/builtin-record.c |    1 +
 tools/perf/perf.h           |    1 +
 tools/perf/util/evsel.c     |    3 +++
 3 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 766fa0a..f8fd14f 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -700,6 +700,7 @@ const struct option record_options[] = {
        OPT_BOOLEAN('d', "data", &record.opts.sample_address,
                    "Sample addresses"),
        OPT_BOOLEAN('T', "timestamp", &record.opts.sample_time, "Sample 
timestamps"),
+       OPT_BOOLEAN('P', "period", &record.opts.period, "Sample period"),
        OPT_BOOLEAN('n', "no-samples", &record.opts.no_samples,
                    "don't sample"),
        OPT_BOOLEAN('N', "no-buildid-cache", &record.no_buildid_cache,
diff --git a/tools/perf/perf.h b/tools/perf/perf.h
index ea804f5..64f8bee 100644
--- a/tools/perf/perf.h
+++ b/tools/perf/perf.h
@@ -200,6 +200,7 @@ struct perf_record_opts {
        bool         sample_time;
        bool         sample_id_all_avail;
        bool         system_wide;
+       bool         period;
        unsigned int freq;
        unsigned int mmap_pages;
        unsigned int user_freq;
diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index e2d1b22..8550018 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -108,6 +108,9 @@ void perf_evsel__config(struct perf_evsel *evsel, struct 
perf_record_opts *opts)
        if (opts->system_wide)
                attr->sample_type       |= PERF_SAMPLE_CPU;
 
+       if (opts->period)
+               attr->sample_type       |= PERF_SAMPLE_PERIOD;
+
        if (opts->sample_id_all_avail &&
            (opts->sample_time || opts->system_wide ||
             !opts->no_inherit || opts->cpu_list))
-- 
1.7.1

_______________________________________________
Devel mailing list
Devel@openvz.org
https://openvz.org/mailman/listinfo/devel

Reply via email to