Re: [PATCH v2] bpf: silence warnings when building kernel/bpf/core.c with W=1
On Mon, Aug 01, 2016 at 01:18:43AM -0400, valdis.kletni...@vt.edu wrote: > On Sun, 31 Jul 2016 21:42:22 -0700, Alexei Starovoitov said: > > > and at least 2 other such patches for other files... > > Is there a single warning where -Woverride-init was useful? > > May be worth disabling this warning for the whole build? > > There's a few other cases that *aren't* the "define the array to zero > and then build the entries from a list" form. > > In particular, there's still 3 odd complaints: > > drivers/ata/ahci.c: > drivers/ata/ahci.h:393:16: warning: initialized field overwritten > [-Woverride-in > it] > .can_queue = AHCI_MAX_CMDS - 1, > > drivers/block/drbd/drbd_main.c: > drivers/block/drbd/drbd_main.c:3767:22: warning: initialized field > overwritten [ > -Woverride-init] >[P_RETRY_WRITE] = "retry_write", > > arch/x86/kernel/cpu/common.c: > ./arch/x86/include/asm/page_64_types.h:22:21: warning: initialized field > overwri > tten [-Woverride-init] > #define DEBUG_STKSZ (PAGE_SIZE << DEBUG_STACK_ORDER) > > The point of these patches is to make -Woverride-init *useful* - you'll never > spot 3 warnings in a flood of over 9,000 understood-and-ignored warnings. > > Get rid of the 9,000 understood-and-ignored warnings, and then things that > probably *should* be looked at can be noticed. I don't think it makes sense to play kernel whack-a-warning in a hope that particular warning will find something useful. Please show few cases where it actually found a real issue, otherwise just disable it for all.
Re: [PATCH v2] bpf: silence warnings when building kernel/bpf/core.c with W=1
On Sun, 31 Jul 2016 21:42:22 -0700, Alexei Starovoitov said: > and at least 2 other such patches for other files... > Is there a single warning where -Woverride-init was useful? > May be worth disabling this warning for the whole build? There's a few other cases that *aren't* the "define the array to zero and then build the entries from a list" form. In particular, there's still 3 odd complaints: drivers/ata/ahci.c: drivers/ata/ahci.h:393:16: warning: initialized field overwritten [-Woverride-in it] .can_queue = AHCI_MAX_CMDS - 1, drivers/block/drbd/drbd_main.c: drivers/block/drbd/drbd_main.c:3767:22: warning: initialized field overwritten [ -Woverride-init] [P_RETRY_WRITE] = "retry_write", arch/x86/kernel/cpu/common.c: ./arch/x86/include/asm/page_64_types.h:22:21: warning: initialized field overwri tten [-Woverride-init] #define DEBUG_STKSZ (PAGE_SIZE << DEBUG_STACK_ORDER) The point of these patches is to make -Woverride-init *useful* - you'll never spot 3 warnings in a flood of over 9,000 understood-and-ignored warnings. Get rid of the 9,000 understood-and-ignored warnings, and then things that probably *should* be looked at can be noticed. pgpftgDSBh95x.pgp Description: PGP signature
Re: [PATCH v2] bpf: silence warnings when building kernel/bpf/core.c with W=1
On Mon, Aug 01, 2016 at 12:33:30AM -0400, Valdis Kletnieks wrote: > Building with W=1 generates some 350 lines of warnings of the form: > > kernel/bpf/core.c: In function '__bpf_prog_run': > kernel/bpf/core.c:476:33: warning: initialized field overwritten > [-Woverride-init] >[BPF_ALU | BPF_ADD | BPF_X] = &_ADD_X, > ^~ > kernel/bpf/core.c:476:33: note: (near initialization for 'jumptable[12]') > > Since they come from the way we intentionally build the table, silence > that one specific warning. > > Signed-off-by: Valdis Kletnieks> > Version 2: Add bpf: subsystem tag to subject line > > diff --git a/kernel/bpf/Makefile b/kernel/bpf/Makefile > index eed911d091da..bb915f9d9f92 100644 > --- a/kernel/bpf/Makefile > +++ b/kernel/bpf/Makefile > @@ -1,3 +1,4 @@ > +CFLAGS_core.o += -Wno-override-init and at least 2 other such patches for other files... Is there a single warning where -Woverride-init was useful? May be worth disabling this warning for the whole build?
[PATCH v2] bpf: silence warnings when building kernel/bpf/core.c with W=1
Building with W=1 generates some 350 lines of warnings of the form: kernel/bpf/core.c: In function '__bpf_prog_run': kernel/bpf/core.c:476:33: warning: initialized field overwritten [-Woverride-init] [BPF_ALU | BPF_ADD | BPF_X] = &_ADD_X, ^~ kernel/bpf/core.c:476:33: note: (near initialization for 'jumptable[12]') Since they come from the way we intentionally build the table, silence that one specific warning. Signed-off-by: Valdis KletnieksVersion 2: Add bpf: subsystem tag to subject line diff --git a/kernel/bpf/Makefile b/kernel/bpf/Makefile index eed911d091da..bb915f9d9f92 100644 --- a/kernel/bpf/Makefile +++ b/kernel/bpf/Makefile @@ -1,3 +1,4 @@ +CFLAGS_core.o += -Wno-override-init obj-y := core.o obj-$(CONFIG_BPF_SYSCALL) += syscall.o verifier.o inode.o helpers.o