Re: [PATCH -tip ] [BUGFIX] perf probe: fix to initialize fname alwaysbefore use it

From: Masami Hiramatsu
Date: Fri Oct 11 2013 - 08:31:57 EST


Hi Arnaldo,

I've found a bug in my previous patch which was already picked
in the perf/urgent branch. The buggy commit id is

e08cfd4bda7683cdbe6971c26cf23e2afdb1e7a8

And this is not related to the previous series of perf probe
updates.

Thank you,

(2013/10/11 21:23), Masami Hiramatsu wrote:
> Fix perf probe --list to initialize fname local var always before
> use it. This may cause a SEGV if there is a probe which is in
> the function body but not in any inline function.
>
> Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
> Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> Cc: Paul Mackerras <paulus@xxxxxxxxx>
> Cc: Ingo Molnar <mingo@xxxxxxxxxx>
> Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxxxxxxx>
> Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> ---
> tools/perf/util/probe-finder.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c
> index c044052..e41b094 100644
> --- a/tools/perf/util/probe-finder.c
> +++ b/tools/perf/util/probe-finder.c
> @@ -1460,10 +1460,10 @@ int debuginfo__find_probe_point(struct debuginfo *self, unsigned long addr,
> goto post;
> }
>
> + fname = dwarf_decl_file(&spdie);
> if (addr == (unsigned long)baseaddr) {
> /* Function entry - Relative line number is 0 */
> lineno = baseline;
> - fname = dwarf_decl_file(&spdie);
> goto post;
> }


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


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/