lkml.org 
[lkml]   [2014]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH -tip v2 1/8] [BUGFIX] perf-probe: Fix to do exit call for symbol maps
    (2014/02/03 16:41), Namhyung Kim wrote:
    > Hi Masami,
    >
    > On Wed, 29 Jan 2014 09:14:52 +0000, Masami Hiramatsu wrote:
    >> Some perf-probe commands do symbol_init() but doesn't
    >> do exit call. This fixes that to call symbol_exit()
    >> and relase machine if needed.
    >> This also merges init_vmlinux() and init_user_exec()
    >> because both of them are doing similar things.
    >> (init_user_exec() just skips init vmlinux related
    >> symbol maps)
    >>
    >> Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
    >> ---
    >> tools/perf/util/probe-event.c | 110 +++++++++++++++++++++++------------------
    >> 1 file changed, 61 insertions(+), 49 deletions(-)
    >>
    >> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
    >> index a8a9b6c..14c649df 100644
    >> --- a/tools/perf/util/probe-event.c
    >> +++ b/tools/perf/util/probe-event.c
    >> @@ -73,31 +73,35 @@ static char *synthesize_perf_probe_point(struct perf_probe_point *pp);
    >> static int convert_name_to_addr(struct perf_probe_event *pev,
    >> const char *exec);
    >> static void clear_probe_trace_event(struct probe_trace_event *tev);
    >> -static struct machine machine;
    >> +static struct machine *host_machine;
    >>
    >> /* Initialize symbol maps and path of vmlinux/modules */
    >> -static int init_vmlinux(void)
    >> +static int init_symbol_maps(bool user_only)
    >> {
    >> int ret;
    >>
    >> symbol_conf.sort_by_name = true;
    >> - if (symbol_conf.vmlinux_name == NULL)
    >> - symbol_conf.try_vmlinux_path = true;
    >> - else
    >> - pr_debug("Use vmlinux: %s\n", symbol_conf.vmlinux_name);
    >> + if (user_only)
    >> + symbol_conf.try_vmlinux_path = false;
    >> + else {
    >> + if (symbol_conf.vmlinux_name == NULL)
    >> + symbol_conf.try_vmlinux_path = true;
    >
    > This looks unnecessary and duplicate since we already have following
    > code in __cmd_probe().
    >
    > /*
    > * Only consider the user's kernel image path if given.
    > */
    > symbol_conf.try_vmlinux_path = (symbol_conf.vmlinux_name == NULL);

    Ah, I see :)
    OK, I'll remove that part not to setting symbol_conf in probe-event.c.

    Thank you!


    --
    Masami HIRAMATSU
    IT Management Research Dept. Linux Technology Center
    Hitachi, Ltd., Yokohama Research Laboratory
    E-mail: masami.hiramatsu.pt@hitachi.com




    \
     
     \ /
      Last update: 2014-02-03 10:01    [W:2.565 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site