linux-next: build failure after merge of the tip tree
Subsystems (2)
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.
(I build in /home/sfr/next/next with objects in /home/sfr/next/perf.)
Presumably caused by commit
1b700c997500 ("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")
I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Signature · 2 lines
Cheers, Stephen Rothwell
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 8 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)
I'll check, should've been caught by a cross compiler build for ppc64le I have in place :-\
minimal-ubuntu-x-ppc64el: Ok
But maybe not, as this requires audit-libs-devel and that is not present on that minimal ubuntu x-compiler setup, sigh :-\
- Arnaldo
Quoted 10 lines
Presumably caused by commit
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Signature · 2 lines
Cheers, Stephen Rothwell
Quoted 10 lines · Arnaldo Carvalho de Melo
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 8 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)
Quoted 7 lines
I'll check, should've been caught by a cross compiler build for ppc64le I have in place :-\
minimal-ubuntu-x-ppc64el: Ok
But maybe not, as this requires audit-libs-devel and that is not present on that minimal ubuntu x-compiler setup, sigh :-\
Hi acme,
I have a jenkins which builds perf on ppc64le, but it only builds Linus' tree and linux-next.
Which branch in your tree should I be building in order to catch problems like this, perf/core ?
https://git.kernel.org/cgit/linux/kernel/git/acme/linux.git/log/?h=perf/core
cheers
Em Thu, Apr 14, 2016 at 10:55:47PM +1000, Michael Ellerman escreveu:
Quoted 21 lines · Arnaldo Carvalho de Melo
Quoted 10 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 8 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Quoted 7 lines
I'll check, should've been caught by a cross compiler build for ppc64le I have in place :-\
minimal-ubuntu-x-ppc64el: Ok
But maybe not, as this requires audit-libs-devel and that is not present on that minimal ubuntu x-compiler setup, sigh :-\
Hi acme,
Quoted 7 lines
I have a jenkins which builds perf on ppc64le, but it only builds Linus' tree and linux-next.
Which branch in your tree should I be building in order to catch problems like this, perf/core ?
https://git.kernel.org/cgit/linux/kernel/git/acme/linux.git/log/?h=perf/core
yes, please, I use two normally, one for devel stuff, perf/core, and perf/urgent when sending stuff to the current merge window.
I'll continue trying to get a local, more complete, cross compiler environment, need to look again at how that multiarch stuff is in debian...
- Arnaldo
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 7 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.
Quoted 8 lines
(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
tools/perf/util/Build +1 -1
@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls -$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c)
--------------------------------------------
Now trying to figure out how to, just for x86 to add a dep for those files, but a arch specific thing shouldn't be in tools/perf/util/Build anyway...
In the end I want this syscalltbl.c thing to know about all arches, to remove the dependency on audit-libs as the way to map syscall ID to name and vice-versa.
So I'll need all arches to generate that arch/$(ARCH)/include/generated/asm/syscalls_64.c file, etc. Doing that by copying from the kernel the files where such info is kept and having a diff check as part of the perf build process, so that we can get notified when it drifts while not tying tools/perf/ to anything outside that can end up breaking the tools/ build when changes happen outside.
- Arnaldo
Arnaldo Carvalho de Melo
maintainerEm Fri, Apr 15, 2016 at 06:15:42PM -0300, Arnaldo Carvalho de Melo escreveu:
Quoted 12 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 11 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
Quoted 7 lines
Quoted 4 lines
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
Jiri, I think this is enough, i.e. I think we make sure, just like the kernel, that the archheaders target in tools/perf/arch/*/Makefile is called before doing all the other build, no?
I.e. when we get to build syscalltbl.o the syscalls_64.c file will be built already, limited testing seems to agree with this :-)
- Arnaldo
Quoted 32 lines
tools/perf/util/Build +1
-2@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls -$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c) --------------------------------------------Now trying to figure out how to, just for x86 to add a dep for those files, but a arch specific thing shouldn't be in
tools/perf/util/Buildanyway...In the end I want this
syscalltbl.cthing to know about all arches, to remove the dependency on audit-libs as the way to map syscall ID to name and vice-versa.So I'll need all arches to generate that arch/$(ARCH)/include/generated/asm/syscalls_64.c file, etc. Doing that by copying from the kernel the files where such info is kept and having a diff check as part of the perf build process, so that we can get notified when it drifts while not tying
tools/perf/to anything outside that can end up breaking thetools/build when changes happen outside.- Arnaldo
Quoted 38 lines · Arnaldo Carvalho de Melo
Em Fri, Apr 15, 2016 at 06:15:42PM -0300, Arnaldo Carvalho de Melo escreveu:
Quoted 12 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 11 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
Quoted 7 lines
Quoted 4 lines
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
Jiri, I think this is enough, i.e. I think we make sure, just like the kernel, that the archheaders target in
tools/perf/arch/*/Makefileis called before doing all the other build, no?I.e. when we get to build syscalltbl.o the
syscalls_64.cfile will be built already, limited testing seems to agree with this :-)- Arnaldo
Quoted 8 lines
tools/perf/util/Build +0
-0@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls
Quoted 2 lines
tools/perf/util/Build CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET · line 153
Quoted 2 lines
tools/perf/util/Build +1
-1-$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCE
yep, having arch specific target in generic Build file is wrong I'll have ppc64le available later today, I'll check on that
jirka
Quoted 39 lines · Jiri Olsa
Quoted 38 lines · Arnaldo Carvalho de Melo
Em Fri, Apr 15, 2016 at 06:15:42PM -0300, Arnaldo Carvalho de Melo escreveu:
Quoted 12 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 11 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
Quoted 7 lines
Quoted 4 lines
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
Jiri, I think this is enough, i.e. I think we make sure, just like the kernel, that the archheaders target in
tools/perf/arch/*/Makefileis called before doing all the other build, no?I.e. when we get to build syscalltbl.o the
syscalls_64.cfile will be built already, limited testing seems to agree with this :-)- Arnaldo
Quoted 8 lines
tools/perf/util/Build +0
-0@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls
Quoted 5 lines
Quoted 2 lines
tools/perf/util/Build CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET · line 153
Quoted 2 lines
tools/perf/util/Build +1
-1-$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCEyep, having arch specific target in generic Build file is wrong I'll have ppc64le available later today, I'll check on that
it looks ok, you can also now remove the whole syscalltbl.o override
and archheaders needs to be called before the build starts, which is the case right now
thanks,
jirka
---
tools/perf/util/Build +0 -4
@@ -150,10 +150,6 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls -$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE - $(call rule_mkdir) - $(call if_changed_dep,cc_o_c) - $(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c)
Arnaldo Carvalho de Melo
maintainerEm Sun, Apr 17, 2016 at 03:04:05PM +0200, Jiri Olsa escreveu:
Quoted 40 lines · Jiri Olsa
Quoted 39 lines · Arnaldo Carvalho de Melo
Quoted 38 lines
Em Fri, Apr 15, 2016 at 06:15:42PM -0300, Arnaldo Carvalho de Melo escreveu:
Quoted 12 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 11 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
Quoted 7 lines
Quoted 4 lines
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
Jiri, I think this is enough, i.e. I think we make sure, just like the kernel, that the archheaders target in
tools/perf/arch/*/Makefileis called before doing all the other build, no?I.e. when we get to build syscalltbl.o the
syscalls_64.cfile will be built already, limited testing seems to agree with this :-)- Arnaldo
Quoted 8 lines
tools/perf/util/Build +0
-0@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
tools/perf/util/Build CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET · line 153
Quoted 2 lines
tools/perf/util/Build +1
-1-$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCEyep, having arch specific target in generic Build file is wrong I'll have ppc64le available later today, I'll check on that
it looks ok, you can also now remove the whole syscalltbl.o override
Ok, so I'll add this and your Tested-by, ok?
- Arnaldo
Quoted 23 lines
and archheaders needs to be called before the build starts, which is the case right now
thanks,
jirka---
tools/perf/util/Build +0
-4@@ -150,10 +150,6 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls -$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE - $(call rule_mkdir) - $(call if_changed_dep,cc_o_c) - $(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c)
Quoted 47 lines · Arnaldo Carvalho de Melo
Em Sun, Apr 17, 2016 at 03:04:05PM +0200, Jiri Olsa escreveu:
Quoted 46 lines · Jiri Olsa
Quoted 44 lines · Arnaldo Carvalho de Melo
Quoted 38 lines
Em Fri, Apr 15, 2016 at 06:15:42PM -0300, Arnaldo Carvalho de Melo escreveu:
Quoted 12 lines
Em Thu, Apr 14, 2016 at 12:14:18PM +1000, Stephen Rothwell escreveu:
Quoted 11 lines
Hi all,
After merging the tip tree, today's linux-next build (powerpc64le perf) failed like this:
make[3]: *** No rule to make target '
/home/sfr/next/perf/arch/x86/include/generated/asm/syscalls_64.c', needed by '/home/sfr/next/perf/util/syscalltbl.o'. Stop.(I build in
/home/sfr/next/nextwith objects in/home/sfr/next/perf.)Presumably caused by commit
Quoted 7 lines
Quoted 4 lines
1b700c997500("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")I have reverted that commit for today (which fixes my build problem but may not be overall correct).
Right, I'm trying to figure out how to bet fix that, one way would be to do:
Jiri, I think this is enough, i.e. I think we make sure, just like the kernel, that the archheaders target in
tools/perf/arch/*/Makefileis called before doing all the other build, no?I.e. when we get to build syscalltbl.o the
syscalls_64.cfile will be built already, limited testing seems to agree with this :-)- Arnaldo
Quoted 8 lines
tools/perf/util/Build +0
-0@@ -150,7 +150,7 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-declsQuoted 2 lines
tools/perf/util/Build CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET · line 153
Quoted 2 lines
tools/perf/util/Build +1
-1-$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE +$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c FORCEyep, having arch specific target in generic Build file is wrong I'll have ppc64le available later today, I'll check on that
Quoted 3 lines
Quoted 1 line
it looks ok, you can also now remove the whole syscalltbl.o override
Ok, so I'll add this and your Tested-by, ok?
ook ;-)
jirka
tip-bot for Arnaldo Carvalho de Melo
merge bot[tip:perf/core] perf build: Remove x86 references from arch-neutral Build
In reply to Arnaldo Carvalho de Meloperf build: Remove x86 references from arch-neutral Build
Commit-ID: 2cc4666927402ec748122cac15ceac35a5e298a3 Gitweb: http://git.kernel.org/tip/2cc4666927402ec748122cac15ceac35a5e298a3 Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Tue, 19 Apr 2016 12:01:51 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Tue, 19 Apr 2016 12:37:02 -0300
perf build: Remove x86 references from arch-neutral Build
It will already be dealt with generating the syscalltbl.c file in the x86 arch specific Build files, namely via 'archheaders'.
This fixes the build on !x86 arches, as reported for powerpcle
--- tools/perf/util/Build | 4 ---- 1 file changed, 4 deletions(-)
tools/perf/util/Build +0 -4
@@ -150,10 +150,6 @@ CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls -$(OUTPUT)util/syscalltbl.o: util/syscalltbl.c arch/x86/entry/syscalls/syscall_64.tbl $(OUTPUT)arch/x86/include/generated/asm/syscalls_64.c FORCE - $(call rule_mkdir) - $(call if_changed_dep,cc_o_c) - $(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c)