lkml.org 
[lkml]   [2014]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH -tip v3 05/11] perf-probe: Show in what binaries/modules probes are set
    From
    Date
    Show the name of binary file or modules in which the probes
    are set with --list option.

    Without this change;

    # ./perf probe -m drm drm_av_sync_delay
    # ./perf probe -x perf dso__load_vmlinux

    # ./perf probe -l
    probe:drm_av_sync_delay (on drm_av_sync_delay)
    probe_perf:dso__load_vmlinux (on 0x000000000006d110)

    With this change;

    # ./perf probe -l
    probe:drm_av_sync_delay (on drm_av_sync_delay in drm)
    probe_perf:dso__load_vmlinux (on 0x000000000006d110 in /kbuild/ksrc/linux-3/tools/perf/perf)

    Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
    ---
    tools/perf/util/probe-event.c | 10 +++++++---
    1 file changed, 7 insertions(+), 3 deletions(-)

    diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
    index ace3ba3..de9fe90 100644
    --- a/tools/perf/util/probe-event.c
    +++ b/tools/perf/util/probe-event.c
    @@ -1728,7 +1728,8 @@ static struct strlist *get_probe_trace_command_rawlist(int fd)
    }

    /* Show an event */
    -static int show_perf_probe_event(struct perf_probe_event *pev)
    +static int show_perf_probe_event(struct perf_probe_event *pev,
    + const char *module)
    {
    int i, ret;
    char buf[128];
    @@ -1744,6 +1745,8 @@ static int show_perf_probe_event(struct perf_probe_event *pev)
    return ret;

    printf(" %-20s (on %s", buf, place);
    + if (module)
    + printf(" in %s", module);

    if (pev->nargs > 0) {
    printf(" with");
    @@ -1781,7 +1784,8 @@ static int __show_perf_probe_events(int fd, bool is_kprobe)
    ret = convert_to_perf_probe_event(&tev, &pev,
    is_kprobe);
    if (ret >= 0)
    - ret = show_perf_probe_event(&pev);
    + ret = show_perf_probe_event(&pev,
    + tev.point.module);
    }
    clear_perf_probe_event(&pev);
    clear_probe_trace_event(&tev);
    @@ -1980,7 +1984,7 @@ static int __add_probe_trace_events(struct perf_probe_event *pev,
    group = pev->group;
    pev->event = tev->event;
    pev->group = tev->group;
    - show_perf_probe_event(pev);
    + show_perf_probe_event(pev, tev->point.module);
    /* Trick here - restore current event/group */
    pev->event = (char *)event;
    pev->group = (char *)group;



    \
     
     \ /
      Last update: 2014-02-06 07:21    [W:3.279 / U:0.320 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site