Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1334660

Re: [PATCH 2/5] Kbuild: disable 'maybe-uninitialized' warning for CONFIG_PROFILE_ALL_BRANCHES

From Steven Rostedt <rostedt@goodmis.org>
Newsgroups linux.kernel
Subject Re: [PATCH 2/5] Kbuild: disable 'maybe-uninitialized' warning for CONFIG_PROFILE_ALL_BRANCHES
Date 2016-02-15 18:50 +0100
Message-ID <r2vrA-4dy-3@gated-at.bofh.it> (permalink)
References <r1os9-Pl-5@gated-at.bofh.it> <r1osa-Pl-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Fri, Feb 12, 2016 at 05:06:19PM +0100, Arnd Bergmann wrote:
> CONFIG_PROFILE_ALL_BRANCHES confuses gcc-5.x to the degree that it prints
> incorrect warnings about a lot of variables that it thinks can be used
> uninitialized, e.g.:
> 
> i2c/busses/i2c-diolan-u2c.c: In function 'diolan_usb_xfer':
> i2c/busses/i2c-diolan-u2c.c:391:16: warning: 'byte' may be used uninitialized in this function
> iio/gyro/itg3200_core.c: In function 'itg3200_probe':
> iio/gyro/itg3200_core.c:213:6: warning: 'val' may be used uninitialized in this function
> leds/leds-lp55xx-common.c: In function 'lp55xx_update_bits':
> leds/leds-lp55xx-common.c:350:6: warning: 'tmp' may be used uninitialized in this function
> misc/bmp085.c: In function 'show_pressure':
> misc/bmp085.c:363:10: warning: 'pressure' may be used uninitialized in this function
> power/ds2782_battery.c: In function 'ds2786_get_capacity':
> power/ds2782_battery.c:214:17: warning: 'raw' may be used uninitialized in this function
> 
> These are all false positives that either rob someone's time when trying
> to figure out whether they are real, or they get people to send wrong
> patches to shut up the warnings.
> 
> Nobody normally wants to run a CONFIG_PROFILE_ALL_BRANCHES kernel in
> production, so disabling the whole class of warnings for this configuration
> has no serious downsides either.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Steven Rostedt <rostedt@goodmis.org>

-- Steve

> ---
>  Makefile | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/Makefile b/Makefile
> index 9092c16fa6cf..352f55ccc54e 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -617,7 +617,11 @@ KBUILD_CFLAGS	+= $(call cc-option,-fno-delete-null-pointer-checks,)
>  ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
>  KBUILD_CFLAGS	+= -Os $(call cc-disable-warning,maybe-uninitialized,)
>  else
> -KBUILD_CFLAGS	+= -O2
> +ifdef CONFIG_PROFILE_ALL_BRANCHES
> +KBUILD_CFLAGS	+= -O2 $(call cc-disable-warning,maybe-uninitialized,)
> +else
> +KBUILD_CFLAGS   += -O2
> +endif
>  endif
>  
>  # Tell gcc to never replace conditional load with a non-conditional one
> -- 
> 2.7.0

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/5] gcov fixes and maybe-uninitialized warnings Arnd Bergmann <arnd@arndb.de> - 2016-02-12 17:10 +0100
  [PATCH 5/5] gcov: disable -Wmaybe-uninitialized warning Arnd Bergmann <arnd@arndb.de> - 2016-02-12 17:10 +0100
    Re: [PATCH 5/5] gcov: disable -Wmaybe-uninitialized warning Peter Oberparleiter <oberpar@linux.vnet.ibm.com> - 2016-02-15 15:40 +0100
  [PATCH 2/5] Kbuild: disable 'maybe-uninitialized' warning for CONFIG_PROFILE_ALL_BRANCHES Arnd Bergmann <arnd@arndb.de> - 2016-02-12 17:10 +0100
    Re: [PATCH 2/5] Kbuild: disable 'maybe-uninitialized' warning for  CONFIG_PROFILE_ALL_BRANCHES Steven Rostedt <rostedt@goodmis.org> - 2016-02-15 18:50 +0100
  [PATCH 4/5] gcov: disable tree-loop-im to reduce stack usage Arnd Bergmann <arnd@arndb.de> - 2016-02-12 17:10 +0100
    Re: [PATCH 4/5] gcov: disable tree-loop-im to reduce stack usage Peter Oberparleiter <oberpar@linux.vnet.ibm.com> - 2016-02-15 15:40 +0100
  [PATCH 1/5] Kbuild: change CC_OPTIMIZE_FOR_SIZE definition Arnd Bergmann <arnd@arndb.de> - 2016-02-12 17:10 +0100

csiph-web