Re: [PATCH 2/3] perf callchain: Stop resolving callchains after invalid address

Namhyung Kim
2015-12-02T05:21:33Z

On Thu, Nov 26, 2015 at 01:19:01PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, Nov 26, 2015 at 04:58:57PM +0100, Jiri Olsa escreveu:
> > On Thu, Nov 26, 2015 at 08:48:17AM -0700, David Ahern wrote:
> > > On 11/26/15 8:00 AM, Namhyung Kim wrote:
> > > >Hi David,
> > > >
> > > >On Thu, Nov 26, 2015 at 06:14:57AM -0700, David Ahern wrote:
> > > >>On 11/26/15 12:08 AM, Namhyung Kim wrote:
> > > >>>@@ -528,11 +529,16 @@ int main(int argc, const char **argv)
> > > >>> {
> > > >>> const char *cmd;
> > > >>> char sbuf[STRERR_BUFSIZE];
> > > >>>+ int min_addr;
> > > >>>
> > > >>> /* The page_size is placed in util object. */
> > > >>> page_size = sysconf(_SC_PAGE_SIZE);
> > > >>> cacheline_size = sysconf(_SC_LEVEL1_DCACHE_LINESIZE);
> > > >>>
> > > >>>+ if (sysctl__read_int("vm/mmap_min_addr", &min_addr) < 0)
>
> Please put this in that symbol_conf kitchen sink :-)
>
> I'm unsure though if there would be a reason for having both the local
> min_addr and the one at perf record time, i.e. from perf.data :-\

Otherwise, it can use different value and can treat valid addresses as
invalid especially if the difference is huge.

Btw, I think it should be kernel to cut off these invalid callchains
in the first place, no?

>
> > > >>This assumes the record and analysis are done on the same system.
> > > >
> > > >Right. Maybe we can just use minimal size (or page size?) or save and
> > > >pass it through somewhere in the feature bit?
> > >
> > > no preference, but it should work with cross arch analysis as well (e.g.,
> > > record on arm/ppc and analysis on x86)
> >
> > I think we should store it in perf.data in features, but seems
> > like a waste to spend one bit just for this number.
> >
> > I remember commenting on new CPU related FEATURE data, that would contain
> > cpu specific data in extensible form like TAG,VALUE,TAG,VALUE..
> >
> > but I think the design changed or something, because I cannot find it in now ;-)
> >
> > maybe we could add something like that
>
> Right, isn't that one part of the perf/stat patchkit?

I'll take a look. Jiri, could you give the link if you have it?

Thanks,
Namhyung