From: Arnaldo Carvalho de Melo <acme@redhat.com>
To: Sudeep Holla <sudeep.holla@arm.com>
Cc: linux-kernel@vger.kernel.org, Jiri Olsa <jolsa@kernel.org>,
Wang Nan <wangnan0@huawei.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
acme@kernel.org
Subject: Re: [PATCH 2/2] tools: perf: fix build error in uapi/linux/mman.h
Date: Tue, 10 Jan 2017 12:43:48 -0200 [thread overview]
Message-ID: <20170110144348.GA2176@redhat.com> (raw)
In-Reply-To: <1484043770-13206-2-git-send-email-sudeep.holla@arm.com>
Em Tue, Jan 10, 2017 at 10:22:50AM +0000, Sudeep Holla escreveu:
> All the other occurrence refer "uapi/asm-generic/*.h" directly instead
> of "uapi/asm/*.h" in tools/include except mman.h. Without this patch,
> the following build failure is seen.
>
Seen where? I don't see it here, and I build perf for lots of different
systems:
# time dm
1 alpine:3.4: Ok
2 android-ndk:r12b-arm: Ok
3 archlinux:latest: Ok
4 centos:5: Ok
5 centos:6: Ok
6 centos:7: Ok
7 debian:7: Ok
8 debian:8: Ok
9 debian:experimental: Ok
10 debian:experimental-x-arm64: Ok
11 debian:experimental-x-mips64: Ok
12 debian:experimental-x-mipsel: Ok
13 fedora:20: Ok
14 fedora:21: Ok
15 fedora:22: Ok
16 fedora:23: Ok
17 fedora:24: Ok
18 fedora:24-x-ARC-uClibc: Ok
19 fedora:25: Ok
20 fedora:rawhide: Ok
21 mageia:5: Ok
22 opensuse:13.2: Ok
23 opensuse:42.1: Ok
24 opensuse:tumbleweed: Ok
25 ubuntu:12.04.5: Ok
26 ubuntu:14.04.4-x-linaro-arm64: Ok
27 ubuntu:15.10: Ok
28 ubuntu:16.04: Ok
29 ubuntu:16.04-x-arm: Ok
30 ubuntu:16.04-x-arm64: Ok
31 ubuntu:16.04-x-powerpc: Ok
32 ubuntu:16.04-x-powerpc64: Ok
33 ubuntu:16.04-x-powerpc64el: Ok
34 ubuntu:16.04-x-s390: Ok
35 ubuntu:16.10: Ok
The ones for cross compiling (-x-) mostly don't have the full set of
devel packages, but even so, I am not seeing this problem, can you
please describe more precisely the environment where you notice this
problem?
Assuming this is on ARM, based on your e-mail address, for instance,
debian:experimental-x-arm64 is built with this Dockerfile, look at the
packages used:
[root@jouet x-arm64]# cat Dockerfile
# docker.io/acmel/linux-perf-tools-build-debian:experimental-x-arm64
FROM docker.io/debian:experimental
MAINTAINER Arnaldo Carvalho de Melo <acme@kernel.org>
#ENV DEBIAN_FRONTEND noninteractive
# libelf-dev, a host package, is needed to build objtool, that will run
# on the host checking target object files. It is also needed for samples/bpf/,
# but that is disabled as cross compilation is not available for it, would require
# a cross clang, etc.
# objtool is disabled because it requires a per arch function that is
# missing for
# arm64:
# make[1]: Leaving directory '/git/linux/tools/objtool'
# LINK /tmp/build/objtool/objtool
# /tmp/build/objtool/objtool-in.o: In function `decode_instructions':
# /git/linux/tools/objtool/builtin-check.c:296: undefined reference to `arch_decode_instruction'
# collect2: error: ld returned 1 exit status
# Makefile:45: recipe for target '/tmp/build/objtool/objtool' failed
# make: *** [/tmp/build/objtool/objtool] Error 1
# make: Leaving directory '/git/linux/tools/objtool'
# debian:experimental-x-arm64: FAIL
ENV ARCH arm64
ENV TARGET aarch64-linux-gnu
RUN dpkg --add-architecture ${ARCH} && \
apt-get -y update && \
apt-get -y install \
make flex bison \
crossbuild-essential-${ARCH} \
libaudit-dev:${ARCH} \
libdw-dev:${ARCH} \
libelf-dev:${ARCH} \
liblzma-dev:${ARCH} \
libnuma-dev:${ARCH} \
libperl-dev:${ARCH} \
libslang2-dev:${ARCH} \
libssl-dev:${ARCH} \
libunwind-dev:${ARCH} \
systemtap-sdt-dev:${ARCH} && \
apt-get -y clean && \
rm -rf /usr/share/doc /usr/share/gtk-doc /usr/share/locale /usr/share/man && \
mkdir -m 777 -p /tmp/build/perf /tmp/build/objtool /tmp/build/linux && \
groupadd -r perfbuilder && \
useradd -m -r -g perfbuilder perfbuilder && \
unset TARGET INSTALLDIR TARGETMACH CROSS CC LD AS && \
chown -R perfbuilder.perfbuilder /tmp/build/
USER perfbuilder
ENTRYPOINT make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux/tools/perf O=/tmp/build/perf && \
rm -rf /tmp/build/perf/{.[^.]*,*} && \
make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux/tools/perf O=/tmp/build/perf NO_LIBELF=1
# make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux/tools/objtool O=/tmp/build/objtool && \
# make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux O=/tmp/build/linux allmodconfig && \
# make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux O=/tmp/build/linux headers_install && \
# make ARCH=${ARCH} CROSS_COMPILE=${TARGET}- -C /git/linux O=/tmp/build/linux samples/bpf/
[root@jouet x-arm64]#
> In file included from util/event.c:2:0:
> tools/include/uapi/linux/mman.h:4:27: fatal error: uapi/asm/mman.h: No such file or directory
> compilation terminated.
>
> Fixes: f3539c12d819 ("tools include: Add uapi mman.h for each architecture")
> Cc: Wang Nan <wangnan0@huawei.com>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Cc: Ingo Molnar <mingo@redhat.com>
> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
> ---
> tools/include/uapi/linux/mman.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/include/uapi/linux/mman.h b/tools/include/uapi/linux/mman.h
> index 81d8edf11789..74a19ae15cd1 100644
> --- a/tools/include/uapi/linux/mman.h
> +++ b/tools/include/uapi/linux/mman.h
> @@ -1,7 +1,7 @@
> #ifndef _UAPI_LINUX_MMAN_H
> #define _UAPI_LINUX_MMAN_H
>
> -#include <uapi/asm/mman.h>
> +#include <uapi/asm-generic/mman.h>
>
> #define MREMAP_MAYMOVE 1
> #define MREMAP_FIXED 2
> --
> 2.7.4
next prev parent reply other threads:[~2017-01-10 14:43 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-10 10:22 [PATCH 1/2] tools: perf: fix linker error when libelf config is disabled Sudeep Holla
2017-01-10 10:22 ` [PATCH 2/2] tools: perf: fix build error in uapi/linux/mman.h Sudeep Holla
2017-01-10 14:43 ` Arnaldo Carvalho de Melo [this message]
2017-01-10 17:13 ` Sudeep Holla
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170110144348.GA2176@redhat.com \
--to=acme@redhat.com \
--cc=acme@kernel.org \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=sudeep.holla@arm.com \
--cc=wangnan0@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox