linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] make compiling X86 syscall tables safe for W=1
@ 2016-08-01  3:24 Valdis Kletnieks
  2016-08-10 18:12 ` [tip:x86/urgent] x86/build: Reduce the W=1 warnings noise when compiling x86 syscall tables tip-bot for Valdis Kletnieks
  0 siblings, 1 reply; 2+ messages in thread
From: Valdis Kletnieks @ 2016-08-01  3:24 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin; +Cc: linux-kernel, x86

Building an X86_64 kernel with W=1 throws a total of 9,948 lines of warnings of
this form for both 32bit and 64bit syscall tables. Given that the entire rest
of the build for my config only generates 8,375 lines of output, this is a big
reduction in the warnings generated.

./arch/x86/include/generated/asm/syscalls_32.h:885:21: warning: initialized field overwritten [-Woverride-init]
 __SYSCALL_I386(379, compat_sys_pwritev2, )
                     ^
arch/x86/entry/syscall_32.c:13:46: note: in definition of macro '__SYSCALL_I386'
 #define __SYSCALL_I386(nr, sym, qual) [nr] = sym,
                                              ^~~
./arch/x86/include/generated/asm/syscalls_32.h:885:21: note: (near initialization for 'ia32_sys_call_table[379]')
 __SYSCALL_I386(379, compat_sys_pwritev2, )
                     ^
arch/x86/entry/syscall_32.c:13:46: note: in definition of macro '__SYSCALL_I386'
 #define __SYSCALL_I386(nr, sym, qual) [nr] = sym,

Since we intentionally build the syscall tables this way, ignore that one
warning in the two files.

Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
---
diff --git a/arch/x86/entry/Makefile b/arch/x86/entry/Makefile
index fe91c25092da..77f28ce9c646 100644
--- a/arch/x86/entry/Makefile
+++ b/arch/x86/entry/Makefile
@@ -5,6 +5,8 @@
 OBJECT_FILES_NON_STANDARD_entry_$(BITS).o   := y
 OBJECT_FILES_NON_STANDARD_entry_64_compat.o := y
 
+CFLAGS_syscall_64.o		+= -Wno-override-init
+CFLAGS_syscall_32.o		+= -Wno-override-init
 obj-y				:= entry_$(BITS).o thunk_$(BITS).o syscall_$(BITS).o
 obj-y				+= common.o
 

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [tip:x86/urgent] x86/build: Reduce the W=1 warnings noise when compiling x86 syscall tables
  2016-08-01  3:24 [PATCH] make compiling X86 syscall tables safe for W=1 Valdis Kletnieks
@ 2016-08-10 18:12 ` tip-bot for Valdis Kletnieks
  0 siblings, 0 replies; 2+ messages in thread
From: tip-bot for Valdis Kletnieks @ 2016-08-10 18:12 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: torvalds, valdis.kletnieks, mingo, tglx, Valdis.Kletnieks, bp,
	linux-kernel, peterz, luto, dvlasenk, hpa, jpoimboe, brgerst

Commit-ID:  5e44258d168b2bdee51d9e2e1f1f4726ff9775cd
Gitweb:     http://git.kernel.org/tip/5e44258d168b2bdee51d9e2e1f1f4726ff9775cd
Author:     Valdis Kletnieks <Valdis.Kletnieks@vt.edu>
AuthorDate: Sun, 31 Jul 2016 23:24:50 -0400
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Wed, 10 Aug 2016 16:05:16 +0200

x86/build: Reduce the W=1 warnings noise when compiling x86 syscall tables

Building an X86_64 kernel with W=1 throws a total of 9,948 lines of warnings of
this form for both 32-bit and 64-bit syscall tables. Given that the entire rest
of the build for my config only generates 8,375 lines of output, this is a big
reduction in the warnings generated.

The warnings follow this pattern:

  ./arch/x86/include/generated/asm/syscalls_32.h:885:21: warning: initialized field overwritten [-Woverride-init]
   __SYSCALL_I386(379, compat_sys_pwritev2, )
                     ^
  arch/x86/entry/syscall_32.c:13:46: note: in definition of macro '__SYSCALL_I386'
   #define __SYSCALL_I386(nr, sym, qual) [nr] = sym,
                                              ^~~
  ./arch/x86/include/generated/asm/syscalls_32.h:885:21: note: (near initialization for 'ia32_sys_call_table[379]')
   __SYSCALL_I386(379, compat_sys_pwritev2, )
                     ^
  arch/x86/entry/syscall_32.c:13:46: note: in definition of macro '__SYSCALL_I386'
   #define __SYSCALL_I386(nr, sym, qual) [nr] = sym,

Since we intentionally build the syscall tables this way, ignore that one
warning in the two files.

Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/7464.1470021890@turing-police.cc.vt.edu
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/entry/Makefile | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/x86/entry/Makefile b/arch/x86/entry/Makefile
index fe91c25..77f28ce 100644
--- a/arch/x86/entry/Makefile
+++ b/arch/x86/entry/Makefile
@@ -5,6 +5,8 @@
 OBJECT_FILES_NON_STANDARD_entry_$(BITS).o   := y
 OBJECT_FILES_NON_STANDARD_entry_64_compat.o := y
 
+CFLAGS_syscall_64.o		+= -Wno-override-init
+CFLAGS_syscall_32.o		+= -Wno-override-init
 obj-y				:= entry_$(BITS).o thunk_$(BITS).o syscall_$(BITS).o
 obj-y				+= common.o
 

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-08-10 20:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-01  3:24 [PATCH] make compiling X86 syscall tables safe for W=1 Valdis Kletnieks
2016-08-10 18:12 ` [tip:x86/urgent] x86/build: Reduce the W=1 warnings noise when compiling x86 syscall tables tip-bot for Valdis Kletnieks

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).