[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190722.183107.298639131733640783.davem@davemloft.net>
Date: Mon, 22 Jul 2019 18:31:07 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: arnd@...db.de
Cc: dhowells@...hat.com, keescook@...omium.org,
linux-afs@...ts.infradead.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, clang-built-linux@...glegroups.com
Subject: Re: [PATCH net-next] rxrpc: shut up -Wframe-larger-than= warnings
From: Arnd Bergmann <arnd@...db.de>
Date: Mon, 22 Jul 2019 16:58:12 +0200
> rxkad sometimes triggers a warning about oversized stack frames
> when building with clang for a 32-bit architecture:
>
> net/rxrpc/rxkad.c:243:12: error: stack frame size of 1088 bytes in function 'rxkad_secure_packet' [-Werror,-Wframe-larger-than=]
> net/rxrpc/rxkad.c:501:12: error: stack frame size of 1088 bytes in function 'rxkad_verify_packet' [-Werror,-Wframe-larger-than=]
>
> The problem is the combination of SYNC_SKCIPHER_REQUEST_ON_STACK()
> in rxkad_verify_packet()/rxkad_secure_packet() with the relatively
> large scatterlist in rxkad_verify_packet_1()/rxkad_secure_packet_encrypt().
>
> The warning does not show up when using gcc, which does not inline
> the functions as aggressively, but the problem is still the same.
>
> Marking the inner functions as 'noinline_for_stack' makes clang
> behave the same way as gcc and avoids the warning.
> This may not be ideal as it leaves the underlying problem
> unchanged. If we want to actually reduce the stack usage here,
> the skcipher_request and scatterlist objects need to be moved
> off the stack.
>
> Signed-off-by: Arnd Bergmann <arnd@...db.de>
David H., I assume you will take this into your tree.
Powered by blists - more mailing lists