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


Groups > linux.kernel > #1334491

Re: [PATCH 4/5] gcov: disable tree-loop-im to reduce stack usage

From Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Newsgroups linux.kernel
Subject Re: [PATCH 4/5] gcov: disable tree-loop-im to reduce stack usage
Date 2016-02-15 15:40 +0100
Message-ID <r2stI-2fA-29@gated-at.bofh.it> (permalink)
References <r1os9-Pl-5@gated-at.bofh.it> <r1osa-Pl-19@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 12.02.2016 17:06, Arnd Bergmann wrote:
> Enabling CONFIG_GCOV_PROFILE_ALL produces us a lot of warnings like
> 
> lib/lz4/lz4hc_compress.c: In function 'lz4_compresshcctx':
> lib/lz4/lz4hc_compress.c:514:1: warning: the frame size of 1504 bytes is larger than 1024 bytes [-Wframe-larger-than=]
> 
> After some investigation, I found that this behavior started with gcc-4.9,
> and opened https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69702.
> A suggested workaround for it is to use the -fno-tree-loop-im
> flag that turns off one of the optimization stages in gcc, so the
> code runs a little slower but does not use excessive amounts
> of stack.
> 
> We could make this conditional on the gcc version, but I could not
> find an easy way to do this in Kbuild and the benefit would be
> fairly small, given that most of the gcc version in production are
> affected now.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

-fno-tree-loop-im seems to have been available for long enough in GCC
(starting with GCC4) to make this part of the default gcov compile flags.

Acked-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>

> ---
>  Makefile | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Makefile b/Makefile
> index 352f55ccc54e..6bb89728a9d1 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -364,7 +364,7 @@ AFLAGS_MODULE   =
>  LDFLAGS_MODULE  =
>  CFLAGS_KERNEL	=
>  AFLAGS_KERNEL	=
> -CFLAGS_GCOV	= -fprofile-arcs -ftest-coverage
> +CFLAGS_GCOV	= -fprofile-arcs -ftest-coverage -fno-tree-loop-im
>  CFLAGS_KCOV	= -fsanitize-coverage=trace-pc
> 
> 


-- 
Peter Oberparleiter
Linux on z Systems Development - IBM Germany

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