Re: linux-next: build warnings after merge of the kbuild tree
From: Arnd Bergmann <arnd@arndb.de>
Date: 2018-06-02 20:39:24
Also in:
lkml
On Fri, Jun 1, 2018 at 6:01 AM, Kees Cook [off-list ref] wrote:
On Thu, May 31, 2018 at 6:56 PM, Masahiro Yamada [off-list ref] wrote:quoted
2018-05-31 12:53 GMT+09:00 Kees Cook [off-list ref]:quoted
On Wed, May 30, 2018 at 6:26 PM, Kees Cook [off-list ref] wrote:quoted
On Wed, May 30, 2018 at 6:12 PM, Masahiro Yamada
quoted
quoted
quoted
quoted
This has been triggered by the following commit: commit 0e461945f3504e09b8ecf947b6398adce1287a28 Author: Masahiro Yamada [off-list ref] Date: Mon May 28 18:22:07 2018 +0900 gcc-plugins: allow to enable GCC_PLUGINS for COMPILE_TEST CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL was previously disabled for COMPILE_TEST, which is now enabled.For the moment, can you add "depends on !COMPILE_TEST" to CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL in your tree and I'll continue to figure out what's happening?
I ran into the same thing indepently and bisected it (which led me to
arrive at this thread).
One additional bit of information I have is that this happens with all
versions of
gcc-7 for me, but not gcc-6.3 or older.
Another finding was the particular instance I noticed:
fs/ext4/inode.c: In function 'ext4_inode_csum':
fs/ext4/inode.c:83:1: warning: the frame size of 1688 bytes is larger
than 500 bytes [-Wframe-larger-than=]
comes from inlining the same function multiple times; ext4_inode_csum()
repeatedly calls ext4_chksum(), which has a struct on the stack. Apparently
this normally only takes up stack space only once, but when initializing it
to zero, each instance takes an additional two CRYPTO_MINALIGN bytes
of stack space (the size of the locally defined structure).
Arnd