lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 11 Aug 2015 11:28:07 +0900
From:	Namhyung Kim <namhyung@...nel.org>
To:	Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:	Andi Kleen <andi@...stfloor.org>, jolsa@...nel.org,
	linux-kernel@...r.kernel.org, Andi Kleen <ak@...ux.intel.com>
Subject: Re: [PATCH] perf, tools, report: Add support for srcfile sort key

On Mon, Aug 10, 2015 at 05:37:40PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Aug 10, 2015 at 03:32:47PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Mon, Aug 10, 2015 at 01:12:41PM -0300, Arnaldo Carvalho de Melo escreveu:
> > > (gdb) fr 2
> > > #2  0x00000000004bb812 in sort__srcline_cmp (left=0x1bfa090, right=0x7fffffffc0a0) at util/sort.c:306
> > > 306				hists__new_col_len(right->hists, HISTC_SRCLINE,
> > > (gdb) p right->hists
> > > $7 = (struct hists *) 0x0
> > > (gdb) p left->hists
> > > $8 = (struct hists *) 0x18d66e0
> 
> > > Due to this both "-s srcline" and "-s srcfile" crashes here.
>  
> > Ok, this one needs to be applied before yours and Andi's:
>  
> > +++ b/tools/perf/util/hist.c
> > @@ -761,6 +761,7 @@ iter_add_next_cumulative_entry(struct hist_entry_iter *iter,
> >  	struct hist_entry **he_cache = iter->priv;
> >  	struct hist_entry *he;
> >  	struct hist_entry he_tmp = {
> > +		.hists = evsel__hists(evsel),
> >  		.cpu = al->cpu,
> > ---------
> 
> > Because you will use that stack synthesized he_tmp entry as a parameter
> > to the cmp() function, that will end up trying to access he_tmp->hists,
> > that was NULL, b00m.
> 
> all this is moot, as we need to update that column length elsewhere,
> together with all the other fileds, please see:
> 
>   ://git.kernel.org/cgit/linux/kernel/git/acme/linux.git/commit/?h=perf/core&id=e8e6d37e73e6b950c891c780745460b87f4755b6

Looks good to me.

> 
> And now, with it really updating the width, we get to another problem,
> in one case I got a line like:
> 
>   0.00%  JS_GetInstancePrivate(JSContext*, JSObject*, JSClass*, JS /usr/lib64/libmozjs-24.so 0x1a0bd1 d [.] JS_GetInstancePrivate(JSContext*, JSObject*, JSClass*, JS::Value*)

It seems like ':' character in the symbol name affects the result for some reason.

Thanks,
Namhyung


> 
> Which is really strange, i.e. it mixed up demangled stuff with the
> srcfile, i.e. normal lines for:
> 
>  perf report -v -s srcfile,dso,symbol --stdio
> 
> Look like:
> 
>      1.94%  malloc.c    /usr/lib64/libc-2.20.so   0x80f91 d [.] _int_malloc
> 
> Anyway, will continue this later, together with checking why it doesn't resolve
> many things, that one may be related, in some cases, to functions in assembly
> source files, for now it updates correctly the column width for "srcline" and
> "srcfile".
> 
> - Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ