perf BPF/elfdep intermitent build problems

From: Arnaldo Carvalho de Melo
Date: Wed Nov 18 2015 - 17:45:18 EST


Have you guys ever saw this?

[acme@zoo linux]$ alias m
alias m='perf stat -e cycles make O=/tmp/build/perf -C tools/perf
install-bin'
[acme @zoo linux]$ m
make: Entering directory '/home/git/linux/tools/perf'
BUILD: Doing 'make -j4' parallel build
make[2]: Nothing to be done for 'fixdep'.
CC /tmp/build/perf/util/machine.o
LD /tmp/build/perf/util/libperf-in.o
No libelf found
BPF API too old
Makefile:191: recipe for target 'elfdep' failed
make[2]: *** [elfdep] Error 255
make[2]: *** Waiting for unfinished jobs....
Makefile:194: recipe for target 'bpfdep' failed
make[2]: *** [bpfdep] Error 255
Makefile.perf:434: recipe for target '/tmp/build/perf/libbpf.a' failed
make[1]: *** [/tmp/build/perf/libbpf.a] Error 2
make[1]: *** Waiting for unfinished jobs....
LD /tmp/build/perf/libperf-in.o
Makefile:87: recipe for target 'install-bin' failed
make: *** [install-bin] Error 2
make: Leaving directory '/home/git/linux/tools/perf'

Performance counter stats for 'make O=/tmp/build/perf -C tools/perf
install-bin':

10,265,920,369 cycles

3.002799545 seconds time elapsed

[acme@zoo linux]$


If I go and try doing a clean on the libbpf dir I see another problem:

[acme@zoo linux]$ cd tools/lib/bpf
[acme@zoo bpf]$ make clean

Auto-detecting system features:
... libelf: [ OFF ]
... bpf: [ OFF ]

CLEAN libbpf
CLEAN core-gen
[acme@zoo bpf]$

No need for feature detection when doing a plain 'make clean', right?

But then, after cleaning it again, and entering tools/perf to do a 'make
clean' as well, it does the feature detection at a second 'make clean'
and this time it shoes [ on ] for both libelf and bpf, and this time
I manage to build perf.

This is all intermitent, will eventually try to drill down if you don't
fix it first

- Arnaldo
--
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/