android_kernel_oneplus_msm8998/tools
Arnaldo Carvalho de Melo 0c57364fa0 perf bench numa: Add define for RUSAGE_THREAD if not present
[ Upstream commit bf561d3c13423fc54daa19b5d49dc15fafdb7acc ]

While cross building perf to the ARC architecture on a fedora 30 host,
we were failing with:

      CC       /tmp/build/perf/bench/numa.o
  bench/numa.c: In function ‘worker_thread’:
  bench/numa.c:1261:12: error: ‘RUSAGE_THREAD’ undeclared (first use in this function); did you mean ‘SIGEV_THREAD’?
    getrusage(RUSAGE_THREAD, &rusage);
              ^~~~~~~~~~~~~
              SIGEV_THREAD
  bench/numa.c:1261:12: note: each undeclared identifier is reported only once for each function it appears in

[perfbuilder@60d5802468f6 perf]$ /arc_gnu_2019.03-rc1_prebuilt_uclibc_le_archs_linux_install/bin/arc-linux-gcc --version | head -1
arc-linux-gcc (ARCv2 ISA Linux uClibc toolchain 2019.03-rc1) 8.3.1 20190225
[perfbuilder@60d5802468f6 perf]$

Trying to reproduce a report by Vineet, I noticed that, with just
cross-built zlib and numactl libraries, I ended up with the above
failure.

So, since RUSAGE_THREAD is available as a define, check for that and
numactl libraries, I ended up with the above failure.

So, since RUSAGE_THREAD is available as a define in the system headers,
check if it is defined in the 'perf bench numa' sources and define it if
not.

Now it builds and I have to figure out if the problem reported by Vineet
only takes place if we have libelf or some other library available.

Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: linux-snps-arc@lists.infradead.org
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Vineet Gupta <Vineet.Gupta1@synopsys.com>
Link: https://lkml.kernel.org/n/tip-2wb4r1gir9xrevbpq7qp0amk@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-06-11 12:23:50 +02:00
..
arch perf bench: Copy kernel files needed to build mem{cpy,set} x86_64 benchmarks 2019-03-23 08:44:37 +01:00
build Kbuild: fix # escaping in .cmd files for future Make 2018-07-19 15:35:57 +02:00
cgroup
firewire
hv Tools: hv: Fix a bug in the key delete code 2018-09-26 08:35:07 +02:00
iio
include perf bench: Copy kernel files needed to build mem{cpy,set} x86_64 benchmarks 2019-03-23 08:44:37 +01:00
laptop/freefall
lguest
lib tools lib traceevent: Fix missing equality check for strcmp 2019-05-16 19:45:06 +02:00
net
nfsd
perf perf bench numa: Add define for RUSAGE_THREAD if not present 2019-06-11 12:23:50 +02:00
power x86/msr-index: Cleanup bit defines 2019-05-16 19:45:13 +02:00
scripts Kbuild: fix # escaping in .cmd files for future Make 2018-07-19 15:35:57 +02:00
testing selftests/net: correct the return value for run_netsocktests 2019-05-16 19:45:06 +02:00
thermal/tmon tools/thermal: tmon: fix for segfault 2018-05-30 07:49:10 +02:00
time
usb tools: usb: ffs-test: Fix build on big endian systems 2018-09-05 09:18:34 +02:00
virtio
vm tools/vm/page-types.c: fix "defined but not used" warning 2018-10-10 08:52:11 +02:00
Makefile