lkml.org 
[lkml]   [2019]   [Aug]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip: perf/core] libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h
    The following commit has been merged into the perf/core branch of tip:

    Commit-ID: 18a13a60f6f50f2fb1f7354f6d0b2ded01995443
    Gitweb: https://git.kernel.org/tip/18a13a60f6f50f2fb1f7354f6d0b2ded01995443
    Author: Jiri Olsa <jolsa@kernel.org>
    AuthorDate: Wed, 28 Aug 2019 15:57:10 +02:00
    Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
    CommitterDate: Thu, 29 Aug 2019 08:36:12 -03:00

    libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h

    Move the PERF_RECORD_STAT event definition to libperf's event.h.

    In order to keep libperf simple, we switch 'u64/u32/u16/u8' types used
    events to their generic '__u*' versions.

    Signed-off-by: Jiri Olsa <jolsa@kernel.org>
    Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
    Cc: Michael Petlan <mpetlan@redhat.com>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Link: http://lkml.kernel.org/r/20190828135717.7245-17-jolsa@kernel.org
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/perf/lib/include/perf/event.h | 17 +++++++++++++++++
    tools/perf/util/event.h | 17 -----------------
    tools/perf/util/stat.c | 4 ++--
    3 files changed, 19 insertions(+), 19 deletions(-)

    diff --git a/tools/perf/lib/include/perf/event.h b/tools/perf/lib/include/perf/event.h
    index ba6ed24..7d1834f 100644
    --- a/tools/perf/lib/include/perf/event.h
    +++ b/tools/perf/lib/include/perf/event.h
    @@ -282,4 +282,21 @@ struct stat_config_event {
    struct stat_config_event_entry data[];
    };

    +struct stat_event {
    + struct perf_event_header header;
    +
    + __u64 id;
    + __u32 cpu;
    + __u32 thread;
    +
    + union {
    + struct {
    + __u64 val;
    + __u64 ena;
    + __u64 run;
    + };
    + __u64 values[3];
    + };
    +};
    +
    #endif /* __LIBPERF_EVENT_H */
    diff --git a/tools/perf/util/event.h b/tools/perf/util/event.h
    index 68531d0..f3a02e0 100644
    --- a/tools/perf/util/event.h
    +++ b/tools/perf/util/event.h
    @@ -332,23 +332,6 @@ struct events_stats {
    u32 nr_proc_map_timeout;
    };

    -struct stat_event {
    - struct perf_event_header header;
    -
    - u64 id;
    - u32 cpu;
    - u32 thread;
    -
    - union {
    - struct {
    - u64 val;
    - u64 ena;
    - u64 run;
    - };
    - u64 values[3];
    - };
    -};
    -
    enum {
    PERF_STAT_ROUND_TYPE__INTERVAL = 0,
    PERF_STAT_ROUND_TYPE__FINAL = 1,
    diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
    index f985336..c0cd9f9 100644
    --- a/tools/perf/util/stat.c
    +++ b/tools/perf/util/stat.c
    @@ -405,9 +405,9 @@ size_t perf_event__fprintf_stat(union perf_event *event, FILE *fp)
    struct stat_event *st = (struct stat_event *) event;
    size_t ret;

    - ret = fprintf(fp, "\n... id %" PRIu64 ", cpu %d, thread %d\n",
    + ret = fprintf(fp, "\n... id %" PRI_lu64 ", cpu %d, thread %d\n",
    st->id, st->cpu, st->thread);
    - ret += fprintf(fp, "... value %" PRIu64 ", enabled %" PRIu64 ", running %" PRIu64 "\n",
    + ret += fprintf(fp, "... value %" PRI_lu64 ", enabled %" PRI_lu64 ", running %" PRI_lu64 "\n",
    st->val, st->ena, st->run);

    return ret;
    \
     
     \ /
      Last update: 2019-08-29 21:04    [W:3.417 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site