Skip to contentSkip to conversation

linux-next: build failure after merge of the tip tree

DISCUSSION Stephen Rothwell 6 participants 11 messages Apr 14, 2016 – Apr 23, 2016

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

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
#1 lore raw

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/next with 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
#2 lore raw
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/next with 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

#3 lore raw

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/next with 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

#4 lore raw
In reply to Stephen Rothwell

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/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).

Right, I'm trying to figure out how to bet fix that, one way would be to do:

tools/perf/util/Build +1 -1
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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

#5 lore raw

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/next with 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
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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

#6 lore raw
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/next with 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 8 lines
tools/perf/util/Build +0 -0
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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

#7 lore raw
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/next with 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 8 lines
tools/perf/util/Build +0 -0
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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 FORCE

yep, 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
index 85a9ab62e23f..90229a88f969 100644
@@ -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)
#8 lore raw

Em 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/next with 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 8 lines
tools/perf/util/Build +0 -0
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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 FORCE

yep, 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
index 85a9ab62e23f..90229a88f969 100644
@@ -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)
#9 lore raw
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/next with 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 8 lines
tools/perf/util/Build +0 -0
index 85a9ab62e23f..7fc4ac304ed6 100644
@@ -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

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

#10 lore raw

[tip:perf/core] perf build: Remove x86 references from arch-neutral Build

In reply to Arnaldo Carvalho de Melo
perf 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

Cc Adrian Hunter <[email protected]>
Cc David Ahern <[email protected]>
Cc "H. Peter Anvin" <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Thomas Gleixner <[email protected]>
Cc Wang Nan <[email protected]>
Fixes 1b700c997500 ("perf tools: Build syscall table .c header from kernel's syscall_64.tbl")
[ Removed the syscalltbl.o altogether, as per Jiri's suggestion ]
---
 tools/perf/util/Build | 4 ----
 1 file changed, 4 deletions(-)
tools/perf/util/Build +0 -4
index 85a9ab6..90229a8 100644
@@ -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)