lkml.org 
[lkml]   [2017]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:perf/core] perf auxtrace: Add itrace option to output ptwrite events
    Commit-ID:  3bdafdffa9baf2b34aebad1c98bc17b50202cb78
    Gitweb: http://git.kernel.org/tip/3bdafdffa9baf2b34aebad1c98bc17b50202cb78
    Author: Adrian Hunter <adrian.hunter@intel.com>
    AuthorDate: Fri, 26 May 2017 11:17:24 +0300
    Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
    CommitDate: Tue, 27 Jun 2017 12:09:20 -0300

    perf auxtrace: Add itrace option to output ptwrite events

    Add itrace option to output ptwrite events.

    Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Andi Kleen <ak@linux.intel.com>
    Link: http://lkml.kernel.org/r/1495786658-18063-24-git-send-email-adrian.hunter@intel.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/perf/Documentation/itrace.txt | 7 ++++---
    tools/perf/util/auxtrace.c | 4 ++++
    tools/perf/util/auxtrace.h | 2 ++
    3 files changed, 10 insertions(+), 3 deletions(-)

    diff --git a/tools/perf/Documentation/itrace.txt b/tools/perf/Documentation/itrace.txt
    index e2a4c5e..deafd16 100644
    --- a/tools/perf/Documentation/itrace.txt
    +++ b/tools/perf/Documentation/itrace.txt
    @@ -3,13 +3,14 @@
    c synthesize branches events (calls only)
    r synthesize branches events (returns only)
    x synthesize transactions events
    + w synthesize ptwrite events
    e synthesize error events
    d create a debug log
    g synthesize a call chain (use with i or x)
    l synthesize last branch entries (use with i or x)
    s skip initial number of events

    - The default is all events i.e. the same as --itrace=ibxe
    + The default is all events i.e. the same as --itrace=ibxwe

    In addition, the period (default 100000) for instructions events
    can be specified in units of:
    @@ -26,8 +27,8 @@
    Also the number of last branch entries (default 64, max. 1024) for
    instructions or transactions events can be specified.

    - It is also possible to skip events generated (instructions, branches, transactions)
    - at the beginning. This is useful to ignore initialization code.
    + It is also possible to skip events generated (instructions, branches, transactions,
    + ptwrite) at the beginning. This is useful to ignore initialization code.

    --itrace=i0nss1000000

    diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
    index 0daf63b..baad91e 100644
    --- a/tools/perf/util/auxtrace.c
    +++ b/tools/perf/util/auxtrace.c
    @@ -947,6 +947,7 @@ void itrace_synth_opts__set_default(struct itrace_synth_opts *synth_opts)
    synth_opts->instructions = true;
    synth_opts->branches = true;
    synth_opts->transactions = true;
    + synth_opts->ptwrites = true;
    synth_opts->errors = true;
    synth_opts->period_type = PERF_ITRACE_DEFAULT_PERIOD_TYPE;
    synth_opts->period = PERF_ITRACE_DEFAULT_PERIOD;
    @@ -1030,6 +1031,9 @@ int itrace_parse_synth_opts(const struct option *opt, const char *str,
    case 'x':
    synth_opts->transactions = true;
    break;
    + case 'w':
    + synth_opts->ptwrites = true;
    + break;
    case 'e':
    synth_opts->errors = true;
    break;
    diff --git a/tools/perf/util/auxtrace.h b/tools/perf/util/auxtrace.h
    index 9f0de72..b48afb2 100644
    --- a/tools/perf/util/auxtrace.h
    +++ b/tools/perf/util/auxtrace.h
    @@ -59,6 +59,7 @@ enum itrace_period_type {
    * @instructions: whether to synthesize 'instructions' events
    * @branches: whether to synthesize 'branches' events
    * @transactions: whether to synthesize events for transactions
    + * @ptwrites: whether to synthesize events for ptwrites
    * @errors: whether to synthesize decoder error events
    * @dont_decode: whether to skip decoding entirely
    * @log: write a decoding log
    @@ -79,6 +80,7 @@ struct itrace_synth_opts {
    bool instructions;
    bool branches;
    bool transactions;
    + bool ptwrites;
    bool errors;
    bool dont_decode;
    bool log;
    \
     
     \ /
      Last update: 2017-07-01 10:52    [W:4.247 / U:0.408 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site