lkml.org 
[lkml]   [2014]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:perf/core] perf tools: Add cpu to struct thread
    Commit-ID:  bf49c35f630452d85c9cd7205a72df841e8d99b9
    Gitweb: http://git.kernel.org/tip/bf49c35f630452d85c9cd7205a72df841e8d99b9
    Author: Adrian Hunter <adrian.hunter@intel.com>
    AuthorDate: Tue, 22 Jul 2014 16:17:24 +0300
    Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
    CommitDate: Wed, 23 Jul 2014 11:27:50 -0300

    perf tools: Add cpu to struct thread

    Tools may wish to track on which cpu a thread is running. Add 'cpu' to
    struct thread for that purpose.

    This will be used to determine the cpu when decoding a per-thread
    Instruction Trace.

    E.g: Intel PT decoding uses sched_switch events to determine which task
    is running on which cpu. The Intel PT data comes straight from the
    hardware which doesn't know about linux threads.

    Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@gmail.com>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Stephane Eranian <eranian@google.com>
    Link: http://lkml.kernel.org/r/1406035081-14301-16-git-send-email-adrian.hunter@intel.com
    Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
    ---
    tools/perf/util/thread.c | 1 +
    tools/perf/util/thread.h | 1 +
    2 files changed, 2 insertions(+)

    diff --git a/tools/perf/util/thread.c b/tools/perf/util/thread.c
    index 9692c06..12c7a25 100644
    --- a/tools/perf/util/thread.c
    +++ b/tools/perf/util/thread.c
    @@ -34,6 +34,7 @@ struct thread *thread__new(pid_t pid, pid_t tid)
    thread->pid_ = pid;
    thread->tid = tid;
    thread->ppid = -1;
    + thread->cpu = -1;
    INIT_LIST_HEAD(&thread->comm_list);

    comm_str = malloc(32);
    diff --git a/tools/perf/util/thread.h b/tools/perf/util/thread.h
    index 3c0c272..716b772 100644
    --- a/tools/perf/util/thread.h
    +++ b/tools/perf/util/thread.h
    @@ -17,6 +17,7 @@ struct thread {
    pid_t pid_; /* Not all tools update this */
    pid_t tid;
    pid_t ppid;
    + int cpu;
    char shortname[3];
    bool comm_set;
    bool dead; /* if set thread has exited */

    \
     
     \ /
      Last update: 2014-07-28 11:01    [W:7.550 / U:0.212 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site