lkml.org 
[lkml]   [2012]   [Feb]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] perf tools: ensure comm properly terminated If threads in a multi-threaded process have names shorter than the main thread the comm for the named threads is not properly terminated.
    Date
    e.g., for the process 'namedthreads' where each thread is named noploop%d
    where %d is the thread number:

    Before:
    perf script -f comm,tid,ip,sym,dso
    noploop:4ads 21616 400a49 noploop (/tmp/namedthreads)
    The 'ads' in the thread comm bleeds over from the process name.

    After:
    perf script -f comm,tid,ip,sym,dso
    noploop:4 21616 400a49 noploop (/tmp/namedthreads)

    Signed-off-by: David Ahern <dsahern@gmail.com>
    ---
    tools/perf/util/event.c | 1 +
    1 files changed, 1 insertions(+), 0 deletions(-)

    diff --git a/tools/perf/util/event.c b/tools/perf/util/event.c
    index 2044324..2a6f33c 100644
    --- a/tools/perf/util/event.c
    +++ b/tools/perf/util/event.c
    @@ -74,6 +74,7 @@ static pid_t perf_event__get_comm_tgid(pid_t pid, char *comm, size_t len)
    if (size >= len)
    size = len - 1;
    memcpy(comm, name, size);
    + comm[size] = '\0';

    } else if (memcmp(bf, "Tgid:", 5) == 0) {
    char *tgids = bf + 5;
    --
    1.7.5.4


    \
     
     \ /
      Last update: 2012-02-24 20:33    [W:0.022 / U:0.408 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site