From: Geert Uytterhoeven <geert@linux-m68k.org>
To: "Liam R. Howlett" <Liam.Howlett@oracle.com>
Cc: Arnd Bergmann <arnd@arndb.de>,
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
Russell King <rmk+kernel@armlinux.org.uk>,
Russell King <linux@armlinux.org.uk>,
linux-arm-kernel@lists.infradead.org,
Marek Vasut <marek.vasut@mailbox.org>
Subject: Re: [issue report] ARM: compile error of frame size
Date: Wed, 15 Oct 2025 12:07:00 +0200 [thread overview]
Message-ID: <CAMuHMdVqOR2kPy7V+N5oCFrKZA0R7JHC_+QsjFc5c43F1KFFiw@mail.gmail.com> (raw)
In-Reply-To: <ax626myd63skmkpb6zleyncggclkivpox2mdvnhcccsplh6gcp@scfguuubd2yp>
Hi Liam,
On Tue, 14 Oct 2025 at 18:53, Liam R. Howlett <Liam.Howlett@oracle.com> wrote:
> * Geert Uytterhoeven <geert@linux-m68k.org> [251014 10:47]:
> > On Tue, 29 Jul 2025 at 09:49, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > > On Tue, 29 Jul 2025 at 09:27, Arnd Bergmann <arnd@arndb.de> wrote:
> > > > On Tue, Jul 29, 2025, at 09:15, Geert Uytterhoeven wrote:
> > > > > On Tue, 29 Jul 2025 at 02:12, Kuninori Morimoto
> > > > > <kuninori.morimoto.gx@renesas.com> wrote:
> > > > >> > > > grep CONFIG_FRAME_WARN .config
> > > > >> > > CONFIG_FRAME_WARN=2040
> > > > >> > >
> > > > >> > > > git diff
> > > > >> > > diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile
> > > > >> > > index d61369b1eabe..c5173bd82380 100644
> > > > >> > > --- a/arch/arm/boot/compressed/Makefile
> > > > >> > > +++ b/arch/arm/boot/compressed/Makefile
> > > > >> > > @@ -80,7 +80,7 @@ libfdt_objs := fdt_rw.o fdt_ro.o fdt_wip.o fdt.o
> > > > >> > >
> > > > >> > > ifeq ($(CONFIG_ARM_ATAG_DTB_COMPAT),y)
> > > > >> > > CFLAGS_REMOVE_atags_to_fdt.o += -Wframe-larger-than=${CONFIG_FRAME_WARN}
> > > > >> > > - CFLAGS_atags_to_fdt.o += -Wframe-larger-than=1280
> > > > >> > > + CFLAGS_atags_to_fdt.o += -Wframe-larger-than=2040
> > > > >> > > OBJS += $(libfdt_objs) atags_to_fdt.o
> > > > >> > > endif
> > > > >> > > ifeq ($(CONFIG_USE_OF),y)
> > > > >> (snip)
> > > > >> > Yes it is. And it is hard to fix, according to the maple_tree maintainer:
> > > > >>
> > > > >> Hmm...
> > > > >> Actually I have tried to same solution (= remove or fix the big node), but
> > > > >> noticed there are many such code. My suggested was very simple solution
> > > > >> I guess, but I'm not sure detail of ARM limitation, and/or it can solve all
> > > > >> cases, etc...
> > > > >>
> > > > >> But other CPU (like ARM64) doesn't have this issue, so we can follow same
> > > > >> way (= allow large frame) I guess.
> > > > >
> > > > > I do see it in one my arm64 builds, it depends on your kernel config:
> > > > >
> > > > > lib/maple_tree.c: In function ‘mas_wr_spanning_store’:
> > > > > lib/maple_tree.c:3812:1: warning: the frame size of 1040 bytes is
> > > > > larger than 1024 bytes [-Wframe-larger-than=] 3812 | }
> > > > >
> > > > > I guess Arnd has seen it in his randconfig builds, too...
> > > > >
> > > > >> Does ARM has some reason which can't use large frame ? If not, do you think
> > > > >> we can allow to use it on ARM ?
> > > > >
> > > > > (stacked) Large frames may cause kernel stack overflow.
> > > >
> > > > The version below works around the warning for arm, arm64 and x86
> > > > on both gcc and clang.
> > >
> > > Thanks, that indeed works for my arm64 config that triggered it before.
> >
> > Unfortunately it no longer helps for my rbxt4927 build...
> >
>
> I've been working on fixing this for a while and am approaching a point
> where I'll share my solution.
>
> The change is non-trivial and is required for expanding node type
> support. But with the amount of change this introduces, I do not want
> to backport the patch set, if possible.
>
> Considering how close we are here (16 bytes), it may be better to find
> another solution to avoid the particular troubled builds.
>
> It is odd that this only shows up in certain cases though. Is there a
> particular config option that is needed to cause the size to grow beyond
> 1024?
And of course there is: I still had a few 64-bit .configs that were
derived from older 32-bit .configs, and thus still had
CONFIG_FRAME_WARN=1024 :-(
Changing them to match the recommended default fixed the issue:
config FRAME_WARN
int "Warn for stack frames larger than"
...
default 1024 if !64BIT
default 2048 if 64BIT
Sorry for the noise...
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
next prev parent reply other threads:[~2025-10-15 10:07 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-18 2:09 [issue report] ARM: compile error of frame size Kuninori Morimoto
2025-07-28 14:56 ` Geert Uytterhoeven
2025-07-29 0:12 ` Kuninori Morimoto
2025-07-29 7:15 ` Geert Uytterhoeven
2025-07-29 7:27 ` Arnd Bergmann
2025-07-29 7:49 ` Geert Uytterhoeven
2025-10-14 14:47 ` Geert Uytterhoeven
2025-10-14 16:53 ` Liam R. Howlett
2025-10-15 9:26 ` Geert Uytterhoeven
2025-10-15 10:07 ` Geert Uytterhoeven [this message]
2025-10-15 11:02 ` Arnd Bergmann
2025-10-15 14:58 ` Geert Uytterhoeven
2025-10-15 15:17 ` Arnd Bergmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAMuHMdVqOR2kPy7V+N5oCFrKZA0R7JHC_+QsjFc5c43F1KFFiw@mail.gmail.com \
--to=geert@linux-m68k.org \
--cc=Liam.Howlett@oracle.com \
--cc=arnd@arndb.de \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux@armlinux.org.uk \
--cc=marek.vasut@mailbox.org \
--cc=rmk+kernel@armlinux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).