Re: kernel build error due to large stack frame in __bch2_str_hash_check_key
From: Kent Overstreet
Date: Tue Jan 21 2025 - 13:02:14 EST
On Tue, Jan 21, 2025 at 05:01:26PM +0100, Jann Horn wrote:
> Hi!
>
> I'm trying to build the mainline kernel at commit
> 95ec54a420b8f445e04a7ca0ea8deb72c51fe1d3 (upstream git master), but
> the build fails with the following error:
>
> ```
> [...]/fs/bcachefs/str_hash.c: In function ‘__bch2_str_hash_check_key’:
> [...]/fs/bcachefs/str_hash.c:295:1: error: the frame size of 2400
> bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
> 295 | }
> | ^
> cc1: all warnings being treated as errors
> ```
>
> I am building with "gcc (Debian 14.2.0-3+build3) 14.2.0", using the
> attached kernel config. I think this used to work with the mainline
> kernel before the 6.14 merge window opened.
Well, your kernel config has something that doubles stack frame size,
it's 1200 bytes here.
I'm pushing this to my master branch to reduce it further, it'll be in
the next pull request.