Re: 4.9.208 regression in perf building

Akemi Yagi
2020-01-05T20:06:21Z

On Sun, Jan 5, 2020 at 11:36 AM Jiri Olsa <jolsa@redhat.com> wrote:
>
> On Sun, Jan 05, 2020 at 10:21:25AM -0800, Akemi Yagi wrote:
> > Adding Arnaldo and Jiri to the CC list.
> >
> > On Sun, Jan 5, 2020 at 9:01 AM Gordan Bobic <gordan@redsleeve.org> wrote:
> > >
> > > It looks like 4.9.208 introduces a build regression for perf:
> > >
> > > make -f /builddir/build/BUILD/kernel-4.9.208/linux-4.9.208-1.el7.x86_64/tools/build/Makefile.build
> > > dir=. obj=perf
> >
> > > -c -o builtin-report.o builtin-report.c
> > > builtin-report.c: In function ‘report__setup_sample_type’:
> > > builtin-report.c:296:6: error: ‘dwarf_callchain_users’ undeclared
> > > (first use in this function)
> > > if (dwarf_callchain_users) {
> > > ^
> > > builtin-report.c:296:6: note: each undeclared identifier is reported
> > > only once for each function it appears in
> > > mv: cannot stat ‘./.builtin-report.o.tmp’: No such file or directory
> > > make[3]: *** [builtin-report.o] Error 1
> > > make[2]: *** [perf-in.o] Error 2
> > > make[1]: *** [sub-make] Error 2
> > > make: *** [all] Error 2
> > >
> > > 4,9.207 works fine.
> >
> > The regression was caused by the following patch:
> >
> > https://lore.kernel.org/lkml/20191021133834.25998-7-acme@kernel.org/
> >
> > To fix this, 'dwarf_callchain_users' needs to be declared.
>
> hum, I see it's declared in callchain.h which is included in builtin-report.c
> also I can't see that same stuff like you have on line 296.. what sources are you on?
>
> could you please check with latest Arnaldo's perf/core?
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git
>
> thanks,
> jirka

This is kernel 4.4.208 that was released today.
'dwarf_callchain_users' is not declared in this kernel. I'm afraid it
was missed when the aforementioned patch was backported.

Akemi