You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@nuttx.apache.org by "Alan C. Assis" <ac...@gmail.com> on 2026/05/06 13:27:01 UTC
Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Hi Everyone,
Recently we faced an issue that was breaking the CI: the
weact-stm32h750:nsh was exhausting its Flash memory. And it is very strange
since this STM32H750 chip has 128KB Flash.
My first thought was that some very heavy feature was enabled to nsh (by
default nsh is supposed to be bare minimum). Then after analysing the
.config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
After disabling it, the Flash usage dropped to 55%. I didn't investigate
yet what caused the memory use increase in the last few days.
I think we should accept Michael's offer to use his membrowser to see these
usage increases before the issue triggers the limit. I asked if he could
release it as a dual license (GPLv3 and Apache) to avoid the concerns
raised on this PR, but didn't receive a response yet.
In the past Greg never allowed DEBUG symbols and features to be enabled by
default. I think we should keep this same rule because sooner or later
other boards will fail in the same way.
BR,
Alan
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by "Alan C. Assis" <ac...@gmail.com>.
Yes, agree! The first step is removing it and later we add it to our CI
Check.
BR,
Alan
On Wed, May 6, 2026 at 10:33 AM Matteo Golin <ma...@gmail.com> wrote:
> Good idea! In the meantime we can just grep for these options and remove
> them.
>
> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
>
> > Hi Everyone,
> >
> > Recently we faced an issue that was breaking the CI: the
> > weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> strange
> > since this STM32H750 chip has 128KB Flash.
> >
> > My first thought was that some very heavy feature was enabled to nsh (by
> > default nsh is supposed to be bare minimum). Then after analysing the
> > .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> >
> > After disabling it, the Flash usage dropped to 55%. I didn't investigate
> > yet what caused the memory use increase in the last few days.
> >
> > I think we should accept Michael's offer to use his membrowser to see
> these
> > usage increases before the issue triggers the limit. I asked if he could
> > release it as a dual license (GPLv3 and Apache) to avoid the concerns
> > raised on this PR, but didn't receive a response yet.
> >
> > In the past Greg never allowed DEBUG symbols and features to be enabled
> by
> > default. I think we should keep this same rule because sooner or later
> > other boards will fail in the same way.
> >
> > BR,
> >
> > Alan
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by "Alan C. Assis" <ac...@gmail.com>.
Yes, so seems like a Kconfig issue that we didn't pay attention to.
On Wed, May 6, 2026 at 11:45 AM raiden00pl <ra...@gmail.com> wrote:
> the problem lies here:
>
> choice
> prompt "Optimization Level"
> default DEBUG_NOOPT if DEBUG_SYMBOLS
> default DEBUG_FULLOPT if !DEBUG_SYMBOLS
>
> but DEBUG_NOOPT is not required for DEBUG_SYMBOLS.
> Debugging experience is also good with -O1 or -O2
>
> śr., 6 maj 2026 o 16:39 raiden00pl <ra...@gmail.com> napisał(a):
>
> > weact-stm32h750:nsh from 3c9a9d683f2291ce88af2fa04382fe15a8b37932
> > commit uses CONFIG_DEBUG_NOOPT=y. No wonder it doesn't fit on 128KB
> Flash.
> > There is nothing strange here.
> >
> > śr., 6 maj 2026 o 16:28 Alan C. Assis <ac...@gmail.com> napisał(a):
> >
> >> Hi Peter,
> >>
> >> It is not only in CI, if I roll back the git to some commit before my
> >> commit that disabled the debug symbols the issue appears:
> >>
> >> $ git reset --hard 3c9a9d683f2291ce88af2fa04382fe15a8b37932
> >>
> >> $ ./tools/configure.sh weact-stm32h750:nsh
> >>
> >> $ make -j
> >>
> >> LD: nuttx
> >> arm-none-eabi-ld: /home/alan/nuttxspace/nuttx/nuttx section `.text' will
> >> not fit in region `flash'
> >> arm-none-eabi-ld: region `flash' overflowed by 1668 bytes
> >> Memory region Used Size Region Size %age Used
> >> itcm: 0 B 64 KB 0.00%
> >> flash: 132740 B 128 KB 101.27%
> >> dtcm1: 0 B 64 KB 0.00%
> >> dtcm2: 0 B 64 KB 0.00%
> >> sram: 6416 B 512 KB 1.22%
> >> sram1: 0 B 128 KB 0.00%
> >> sram2: 0 B 128 KB 0.00%
> >> sram3: 0 B 32 KB 0.00%
> >> sram4: 0 B 64 KB 0.00%
> >> bbram: 0 B 4 KB 0.00%
> >> make[1]: *** [Makefile:226: nuttx] Error 1
> >> make: *** [tools/Unix.mk:568: nuttx] Error 2
> >>
> >> So, it is not just a glitch in the CI, the issue also happened building
> it
> >> locally.
> >>
> >> BR,
> >>
> >> Alan
> >>
> >> On Wed, May 6, 2026 at 11:09 AM Peter Barada <pe...@gmail.com>
> >> wrote:
> >>
> >> > Alan,
> >> >
> >> > Any chance a CI build tree that fails could be squirreled away
> >> > short-term so if interested one could inspect it? In this case being
> >> > able to inspect the build tree that failed would be most useful as
> >> > opposed to waiting for the failure to happen again.
> >> >
> >> > By default I can see disabling ERR/WARN/INFO and DEBUG_FEATURES in
> >> > resource constrained configurations, but not globally to make sure a
> PR
> >> > doesn't quietly cause a failure that's only visible if DEBUG_FEATURES
> >> > and ERR/WARN/INFO are enabled. I'd suggest (if possible) to have a CI
> >> > build configuration for each arch/family that tries to turn everything
> >> > on to make sure there are no lurking issues.
> >> >
> >> > On 5/6/26 09:49, Alan C. Assis wrote:
> >> > > Ok, I just tested again enabling:
> >> > >
> >> > > CONFIG_DEBUG_SYMBOLS=y
> >> > > CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
> >> > >
> >> > > And the size didn't change. I think we need to investigate this
> >> > > "intermittent" issue that happened in the mainline.
> >> > >
> >> > > But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will
> >> > increase
> >> > > the firmware size, I think those we can remove.
> >> > >
> >> > > BR,
> >> > >
> >> > > Alan
> >> > >
> >> > > On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com>
> >> wrote:
> >> > >
> >> > >> -1.
> >> > >>
> >> > >> This project is for devs, the main tool used by dev is the debugger
> >> and
> >> > >> disabling debug symbols only breaks the workflow for users and
> makes
> >> > life
> >> > >> harder.
> >> > >> Debug symbols have no effect on resource usage unless you're
> loading
> >> > >> ELF directly on target (kernel mode, modules) or something is
> broken
> >> in
> >> > the
> >> > >> build
> >> > >> system or linker. Debug symbols are DWARF information that get
> >> embedded
> >> > >> into
> >> > >> the ELF not binary.
> >> > >>
> >> > >> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
> >> > napisał(a):
> >> > >>
> >> > >>> Good idea! In the meantime we can just grep for these options and
> >> > remove
> >> > >>> them.
> >> > >>>
> >> > >>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com>
> >> wrote:
> >> > >>>
> >> > >>>> Hi Everyone,
> >> > >>>>
> >> > >>>> Recently we faced an issue that was breaking the CI: the
> >> > >>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is
> very
> >> > >>> strange
> >> > >>>> since this STM32H750 chip has 128KB Flash.
> >> > >>>>
> >> > >>>> My first thought was that some very heavy feature was enabled to
> >> nsh
> >> > >> (by
> >> > >>>> default nsh is supposed to be bare minimum). Then after analysing
> >> the
> >> > >>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> >> > >>>>
> >> > >>>> After disabling it, the Flash usage dropped to 55%. I didn't
> >> > >> investigate
> >> > >>>> yet what caused the memory use increase in the last few days.
> >> > >>>>
> >> > >>>> I think we should accept Michael's offer to use his membrowser to
> >> see
> >> > >>> these
> >> > >>>> usage increases before the issue triggers the limit. I asked if
> he
> >> > >> could
> >> > >>>> release it as a dual license (GPLv3 and Apache) to avoid the
> >> concerns
> >> > >>>> raised on this PR, but didn't receive a response yet.
> >> > >>>>
> >> > >>>> In the past Greg never allowed DEBUG symbols and features to be
> >> > enabled
> >> > >>> by
> >> > >>>> default. I think we should keep this same rule because sooner or
> >> later
> >> > >>>> other boards will fail in the same way.
> >> > >>>>
> >> > >>>> BR,
> >> > >>>>
> >> > >>>> Alan
> >> > >>>>
> >> >
> >>
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by raiden00pl <ra...@gmail.com>.
the problem lies here:
choice
prompt "Optimization Level"
default DEBUG_NOOPT if DEBUG_SYMBOLS
default DEBUG_FULLOPT if !DEBUG_SYMBOLS
but DEBUG_NOOPT is not required for DEBUG_SYMBOLS.
Debugging experience is also good with -O1 or -O2
śr., 6 maj 2026 o 16:39 raiden00pl <ra...@gmail.com> napisał(a):
> weact-stm32h750:nsh from 3c9a9d683f2291ce88af2fa04382fe15a8b37932
> commit uses CONFIG_DEBUG_NOOPT=y. No wonder it doesn't fit on 128KB Flash.
> There is nothing strange here.
>
> śr., 6 maj 2026 o 16:28 Alan C. Assis <ac...@gmail.com> napisał(a):
>
>> Hi Peter,
>>
>> It is not only in CI, if I roll back the git to some commit before my
>> commit that disabled the debug symbols the issue appears:
>>
>> $ git reset --hard 3c9a9d683f2291ce88af2fa04382fe15a8b37932
>>
>> $ ./tools/configure.sh weact-stm32h750:nsh
>>
>> $ make -j
>>
>> LD: nuttx
>> arm-none-eabi-ld: /home/alan/nuttxspace/nuttx/nuttx section `.text' will
>> not fit in region `flash'
>> arm-none-eabi-ld: region `flash' overflowed by 1668 bytes
>> Memory region Used Size Region Size %age Used
>> itcm: 0 B 64 KB 0.00%
>> flash: 132740 B 128 KB 101.27%
>> dtcm1: 0 B 64 KB 0.00%
>> dtcm2: 0 B 64 KB 0.00%
>> sram: 6416 B 512 KB 1.22%
>> sram1: 0 B 128 KB 0.00%
>> sram2: 0 B 128 KB 0.00%
>> sram3: 0 B 32 KB 0.00%
>> sram4: 0 B 64 KB 0.00%
>> bbram: 0 B 4 KB 0.00%
>> make[1]: *** [Makefile:226: nuttx] Error 1
>> make: *** [tools/Unix.mk:568: nuttx] Error 2
>>
>> So, it is not just a glitch in the CI, the issue also happened building it
>> locally.
>>
>> BR,
>>
>> Alan
>>
>> On Wed, May 6, 2026 at 11:09 AM Peter Barada <pe...@gmail.com>
>> wrote:
>>
>> > Alan,
>> >
>> > Any chance a CI build tree that fails could be squirreled away
>> > short-term so if interested one could inspect it? In this case being
>> > able to inspect the build tree that failed would be most useful as
>> > opposed to waiting for the failure to happen again.
>> >
>> > By default I can see disabling ERR/WARN/INFO and DEBUG_FEATURES in
>> > resource constrained configurations, but not globally to make sure a PR
>> > doesn't quietly cause a failure that's only visible if DEBUG_FEATURES
>> > and ERR/WARN/INFO are enabled. I'd suggest (if possible) to have a CI
>> > build configuration for each arch/family that tries to turn everything
>> > on to make sure there are no lurking issues.
>> >
>> > On 5/6/26 09:49, Alan C. Assis wrote:
>> > > Ok, I just tested again enabling:
>> > >
>> > > CONFIG_DEBUG_SYMBOLS=y
>> > > CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
>> > >
>> > > And the size didn't change. I think we need to investigate this
>> > > "intermittent" issue that happened in the mainline.
>> > >
>> > > But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will
>> > increase
>> > > the firmware size, I think those we can remove.
>> > >
>> > > BR,
>> > >
>> > > Alan
>> > >
>> > > On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com>
>> wrote:
>> > >
>> > >> -1.
>> > >>
>> > >> This project is for devs, the main tool used by dev is the debugger
>> and
>> > >> disabling debug symbols only breaks the workflow for users and makes
>> > life
>> > >> harder.
>> > >> Debug symbols have no effect on resource usage unless you're loading
>> > >> ELF directly on target (kernel mode, modules) or something is broken
>> in
>> > the
>> > >> build
>> > >> system or linker. Debug symbols are DWARF information that get
>> embedded
>> > >> into
>> > >> the ELF not binary.
>> > >>
>> > >> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
>> > napisał(a):
>> > >>
>> > >>> Good idea! In the meantime we can just grep for these options and
>> > remove
>> > >>> them.
>> > >>>
>> > >>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com>
>> wrote:
>> > >>>
>> > >>>> Hi Everyone,
>> > >>>>
>> > >>>> Recently we faced an issue that was breaking the CI: the
>> > >>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is very
>> > >>> strange
>> > >>>> since this STM32H750 chip has 128KB Flash.
>> > >>>>
>> > >>>> My first thought was that some very heavy feature was enabled to
>> nsh
>> > >> (by
>> > >>>> default nsh is supposed to be bare minimum). Then after analysing
>> the
>> > >>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
>> > >>>>
>> > >>>> After disabling it, the Flash usage dropped to 55%. I didn't
>> > >> investigate
>> > >>>> yet what caused the memory use increase in the last few days.
>> > >>>>
>> > >>>> I think we should accept Michael's offer to use his membrowser to
>> see
>> > >>> these
>> > >>>> usage increases before the issue triggers the limit. I asked if he
>> > >> could
>> > >>>> release it as a dual license (GPLv3 and Apache) to avoid the
>> concerns
>> > >>>> raised on this PR, but didn't receive a response yet.
>> > >>>>
>> > >>>> In the past Greg never allowed DEBUG symbols and features to be
>> > enabled
>> > >>> by
>> > >>>> default. I think we should keep this same rule because sooner or
>> later
>> > >>>> other boards will fail in the same way.
>> > >>>>
>> > >>>> BR,
>> > >>>>
>> > >>>> Alan
>> > >>>>
>> >
>>
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by raiden00pl <ra...@gmail.com>.
weact-stm32h750:nsh from 3c9a9d683f2291ce88af2fa04382fe15a8b37932
commit uses CONFIG_DEBUG_NOOPT=y. No wonder it doesn't fit on 128KB Flash.
There is nothing strange here.
śr., 6 maj 2026 o 16:28 Alan C. Assis <ac...@gmail.com> napisał(a):
> Hi Peter,
>
> It is not only in CI, if I roll back the git to some commit before my
> commit that disabled the debug symbols the issue appears:
>
> $ git reset --hard 3c9a9d683f2291ce88af2fa04382fe15a8b37932
>
> $ ./tools/configure.sh weact-stm32h750:nsh
>
> $ make -j
>
> LD: nuttx
> arm-none-eabi-ld: /home/alan/nuttxspace/nuttx/nuttx section `.text' will
> not fit in region `flash'
> arm-none-eabi-ld: region `flash' overflowed by 1668 bytes
> Memory region Used Size Region Size %age Used
> itcm: 0 B 64 KB 0.00%
> flash: 132740 B 128 KB 101.27%
> dtcm1: 0 B 64 KB 0.00%
> dtcm2: 0 B 64 KB 0.00%
> sram: 6416 B 512 KB 1.22%
> sram1: 0 B 128 KB 0.00%
> sram2: 0 B 128 KB 0.00%
> sram3: 0 B 32 KB 0.00%
> sram4: 0 B 64 KB 0.00%
> bbram: 0 B 4 KB 0.00%
> make[1]: *** [Makefile:226: nuttx] Error 1
> make: *** [tools/Unix.mk:568: nuttx] Error 2
>
> So, it is not just a glitch in the CI, the issue also happened building it
> locally.
>
> BR,
>
> Alan
>
> On Wed, May 6, 2026 at 11:09 AM Peter Barada <pe...@gmail.com>
> wrote:
>
> > Alan,
> >
> > Any chance a CI build tree that fails could be squirreled away
> > short-term so if interested one could inspect it? In this case being
> > able to inspect the build tree that failed would be most useful as
> > opposed to waiting for the failure to happen again.
> >
> > By default I can see disabling ERR/WARN/INFO and DEBUG_FEATURES in
> > resource constrained configurations, but not globally to make sure a PR
> > doesn't quietly cause a failure that's only visible if DEBUG_FEATURES
> > and ERR/WARN/INFO are enabled. I'd suggest (if possible) to have a CI
> > build configuration for each arch/family that tries to turn everything
> > on to make sure there are no lurking issues.
> >
> > On 5/6/26 09:49, Alan C. Assis wrote:
> > > Ok, I just tested again enabling:
> > >
> > > CONFIG_DEBUG_SYMBOLS=y
> > > CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
> > >
> > > And the size didn't change. I think we need to investigate this
> > > "intermittent" issue that happened in the mainline.
> > >
> > > But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will
> > increase
> > > the firmware size, I think those we can remove.
> > >
> > > BR,
> > >
> > > Alan
> > >
> > > On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com>
> wrote:
> > >
> > >> -1.
> > >>
> > >> This project is for devs, the main tool used by dev is the debugger
> and
> > >> disabling debug symbols only breaks the workflow for users and makes
> > life
> > >> harder.
> > >> Debug symbols have no effect on resource usage unless you're loading
> > >> ELF directly on target (kernel mode, modules) or something is broken
> in
> > the
> > >> build
> > >> system or linker. Debug symbols are DWARF information that get
> embedded
> > >> into
> > >> the ELF not binary.
> > >>
> > >> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
> > napisał(a):
> > >>
> > >>> Good idea! In the meantime we can just grep for these options and
> > remove
> > >>> them.
> > >>>
> > >>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com>
> wrote:
> > >>>
> > >>>> Hi Everyone,
> > >>>>
> > >>>> Recently we faced an issue that was breaking the CI: the
> > >>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> > >>> strange
> > >>>> since this STM32H750 chip has 128KB Flash.
> > >>>>
> > >>>> My first thought was that some very heavy feature was enabled to nsh
> > >> (by
> > >>>> default nsh is supposed to be bare minimum). Then after analysing
> the
> > >>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> > >>>>
> > >>>> After disabling it, the Flash usage dropped to 55%. I didn't
> > >> investigate
> > >>>> yet what caused the memory use increase in the last few days.
> > >>>>
> > >>>> I think we should accept Michael's offer to use his membrowser to
> see
> > >>> these
> > >>>> usage increases before the issue triggers the limit. I asked if he
> > >> could
> > >>>> release it as a dual license (GPLv3 and Apache) to avoid the
> concerns
> > >>>> raised on this PR, but didn't receive a response yet.
> > >>>>
> > >>>> In the past Greg never allowed DEBUG symbols and features to be
> > enabled
> > >>> by
> > >>>> default. I think we should keep this same rule because sooner or
> later
> > >>>> other boards will fail in the same way.
> > >>>>
> > >>>> BR,
> > >>>>
> > >>>> Alan
> > >>>>
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by "Alan C. Assis" <ac...@gmail.com>.
Hi Peter,
It is not only in CI, if I roll back the git to some commit before my
commit that disabled the debug symbols the issue appears:
$ git reset --hard 3c9a9d683f2291ce88af2fa04382fe15a8b37932
$ ./tools/configure.sh weact-stm32h750:nsh
$ make -j
LD: nuttx
arm-none-eabi-ld: /home/alan/nuttxspace/nuttx/nuttx section `.text' will
not fit in region `flash'
arm-none-eabi-ld: region `flash' overflowed by 1668 bytes
Memory region Used Size Region Size %age Used
itcm: 0 B 64 KB 0.00%
flash: 132740 B 128 KB 101.27%
dtcm1: 0 B 64 KB 0.00%
dtcm2: 0 B 64 KB 0.00%
sram: 6416 B 512 KB 1.22%
sram1: 0 B 128 KB 0.00%
sram2: 0 B 128 KB 0.00%
sram3: 0 B 32 KB 0.00%
sram4: 0 B 64 KB 0.00%
bbram: 0 B 4 KB 0.00%
make[1]: *** [Makefile:226: nuttx] Error 1
make: *** [tools/Unix.mk:568: nuttx] Error 2
So, it is not just a glitch in the CI, the issue also happened building it
locally.
BR,
Alan
On Wed, May 6, 2026 at 11:09 AM Peter Barada <pe...@gmail.com> wrote:
> Alan,
>
> Any chance a CI build tree that fails could be squirreled away
> short-term so if interested one could inspect it? In this case being
> able to inspect the build tree that failed would be most useful as
> opposed to waiting for the failure to happen again.
>
> By default I can see disabling ERR/WARN/INFO and DEBUG_FEATURES in
> resource constrained configurations, but not globally to make sure a PR
> doesn't quietly cause a failure that's only visible if DEBUG_FEATURES
> and ERR/WARN/INFO are enabled. I'd suggest (if possible) to have a CI
> build configuration for each arch/family that tries to turn everything
> on to make sure there are no lurking issues.
>
> On 5/6/26 09:49, Alan C. Assis wrote:
> > Ok, I just tested again enabling:
> >
> > CONFIG_DEBUG_SYMBOLS=y
> > CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
> >
> > And the size didn't change. I think we need to investigate this
> > "intermittent" issue that happened in the mainline.
> >
> > But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will
> increase
> > the firmware size, I think those we can remove.
> >
> > BR,
> >
> > Alan
> >
> > On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
> >
> >> -1.
> >>
> >> This project is for devs, the main tool used by dev is the debugger and
> >> disabling debug symbols only breaks the workflow for users and makes
> life
> >> harder.
> >> Debug symbols have no effect on resource usage unless you're loading
> >> ELF directly on target (kernel mode, modules) or something is broken in
> the
> >> build
> >> system or linker. Debug symbols are DWARF information that get embedded
> >> into
> >> the ELF not binary.
> >>
> >> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
> napisał(a):
> >>
> >>> Good idea! In the meantime we can just grep for these options and
> remove
> >>> them.
> >>>
> >>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
> >>>
> >>>> Hi Everyone,
> >>>>
> >>>> Recently we faced an issue that was breaking the CI: the
> >>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> >>> strange
> >>>> since this STM32H750 chip has 128KB Flash.
> >>>>
> >>>> My first thought was that some very heavy feature was enabled to nsh
> >> (by
> >>>> default nsh is supposed to be bare minimum). Then after analysing the
> >>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> >>>>
> >>>> After disabling it, the Flash usage dropped to 55%. I didn't
> >> investigate
> >>>> yet what caused the memory use increase in the last few days.
> >>>>
> >>>> I think we should accept Michael's offer to use his membrowser to see
> >>> these
> >>>> usage increases before the issue triggers the limit. I asked if he
> >> could
> >>>> release it as a dual license (GPLv3 and Apache) to avoid the concerns
> >>>> raised on this PR, but didn't receive a response yet.
> >>>>
> >>>> In the past Greg never allowed DEBUG symbols and features to be
> enabled
> >>> by
> >>>> default. I think we should keep this same rule because sooner or later
> >>>> other boards will fail in the same way.
> >>>>
> >>>> BR,
> >>>>
> >>>> Alan
> >>>>
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by Peter Barada <pe...@gmail.com>.
Alan,
Any chance a CI build tree that fails could be squirreled away
short-term so if interested one could inspect it? In this case being
able to inspect the build tree that failed would be most useful as
opposed to waiting for the failure to happen again.
By default I can see disabling ERR/WARN/INFO and DEBUG_FEATURES in
resource constrained configurations, but not globally to make sure a PR
doesn't quietly cause a failure that's only visible if DEBUG_FEATURES
and ERR/WARN/INFO are enabled. I'd suggest (if possible) to have a CI
build configuration for each arch/family that tries to turn everything
on to make sure there are no lurking issues.
On 5/6/26 09:49, Alan C. Assis wrote:
> Ok, I just tested again enabling:
>
> CONFIG_DEBUG_SYMBOLS=y
> CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
>
> And the size didn't change. I think we need to investigate this
> "intermittent" issue that happened in the mainline.
>
> But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will increase
> the firmware size, I think those we can remove.
>
> BR,
>
> Alan
>
> On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
>
>> -1.
>>
>> This project is for devs, the main tool used by dev is the debugger and
>> disabling debug symbols only breaks the workflow for users and makes life
>> harder.
>> Debug symbols have no effect on resource usage unless you're loading
>> ELF directly on target (kernel mode, modules) or something is broken in the
>> build
>> system or linker. Debug symbols are DWARF information that get embedded
>> into
>> the ELF not binary.
>>
>> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com> napisał(a):
>>
>>> Good idea! In the meantime we can just grep for these options and remove
>>> them.
>>>
>>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
>>>
>>>> Hi Everyone,
>>>>
>>>> Recently we faced an issue that was breaking the CI: the
>>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is very
>>> strange
>>>> since this STM32H750 chip has 128KB Flash.
>>>>
>>>> My first thought was that some very heavy feature was enabled to nsh
>> (by
>>>> default nsh is supposed to be bare minimum). Then after analysing the
>>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
>>>>
>>>> After disabling it, the Flash usage dropped to 55%. I didn't
>> investigate
>>>> yet what caused the memory use increase in the last few days.
>>>>
>>>> I think we should accept Michael's offer to use his membrowser to see
>>> these
>>>> usage increases before the issue triggers the limit. I asked if he
>> could
>>>> release it as a dual license (GPLv3 and Apache) to avoid the concerns
>>>> raised on this PR, but didn't receive a response yet.
>>>>
>>>> In the past Greg never allowed DEBUG symbols and features to be enabled
>>> by
>>>> default. I think we should keep this same rule because sooner or later
>>>> other boards will fail in the same way.
>>>>
>>>> BR,
>>>>
>>>> Alan
>>>>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by Peter Barada <pe...@gmail.com>.
Alan,
Is there a way to squirrel away a CI build tree that fails for a short
term? Then if someone is interested in a they could inspect the failed
CI build tree? In this case it would make it a lot easier to understand
why it failed rather than having to wait for it to happen again.
Also I'd suggest disabling DEBUG_FEATURES and ERR/WARN/INFO only for
resource constrained configurations. In fact I'd suggest having a CI
build for arch/family that tries to turn everything on to make sure
there are no lurking build failures hiding behind disabled configuration
options.
On 5/6/26 09:49, Alan C. Assis wrote:
> Ok, I just tested again enabling:
>
> CONFIG_DEBUG_SYMBOLS=y
> CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
>
> And the size didn't change. I think we need to investigate this
> "intermittent" issue that happened in the mainline.
>
> But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will increase
> the firmware size, I think those we can remove.
>
> BR,
>
> Alan
>
> On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
>
>> -1.
>>
>> This project is for devs, the main tool used by dev is the debugger and
>> disabling debug symbols only breaks the workflow for users and makes life
>> harder.
>> Debug symbols have no effect on resource usage unless you're loading
>> ELF directly on target (kernel mode, modules) or something is broken in the
>> build
>> system or linker. Debug symbols are DWARF information that get embedded
>> into
>> the ELF not binary.
>>
>> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com> napisał(a):
>>
>>> Good idea! In the meantime we can just grep for these options and remove
>>> them.
>>>
>>> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
>>>
>>>> Hi Everyone,
>>>>
>>>> Recently we faced an issue that was breaking the CI: the
>>>> weact-stm32h750:nsh was exhausting its Flash memory. And it is very
>>> strange
>>>> since this STM32H750 chip has 128KB Flash.
>>>>
>>>> My first thought was that some very heavy feature was enabled to nsh
>> (by
>>>> default nsh is supposed to be bare minimum). Then after analysing the
>>>> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
>>>>
>>>> After disabling it, the Flash usage dropped to 55%. I didn't
>> investigate
>>>> yet what caused the memory use increase in the last few days.
>>>>
>>>> I think we should accept Michael's offer to use his membrowser to see
>>> these
>>>> usage increases before the issue triggers the limit. I asked if he
>> could
>>>> release it as a dual license (GPLv3 and Apache) to avoid the concerns
>>>> raised on this PR, but didn't receive a response yet.
>>>>
>>>> In the past Greg never allowed DEBUG symbols and features to be enabled
>>> by
>>>> default. I think we should keep this same rule because sooner or later
>>>> other boards will fail in the same way.
>>>>
>>>> BR,
>>>>
>>>> Alan
>>>>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by "Alan C. Assis" <ac...@gmail.com>.
Raiden00pl I understand your point, but soon or later those "lots of flash"
will not be enough, we are bloating ~~at "warp speed"~~ very fast.
I never imagined that 128KB couldn't be enough for a simple nsh board
profile.
BTW, I decided to save the .config where the "bloated" stm32h750 issue
happened, moved the git HEAD with the "fix", compiled again, entered inside
menuconfig and enabled the debug symbols, then I saw this:
[image: image.png]
So, the the bloated .config we have:
CONFIG_DEBUG_NOOPT=y
# CONFIG_DEBUG_FULLOPT is not set
and in the good .config we have:
# CONFIG_DEBUG_NOOPT is not set
CONFIG_DEBUG_FULLOPT=y
BR,
Alan
On Wed, May 6, 2026 at 10:58 AM raiden00pl <ra...@gmail.com> wrote:
> Why disable debug features for boards with a lot of flash?
> These options provide important information, especially when testing the
> board.
> Where flash is low, debug features are most likely already disabled.
> Disabling debug features on some boards already resulted in errors not
> being
> detected in the upstream and remaining there for months.
>
> śr., 6 maj 2026 o 15:51 Alan C. Assis <ac...@gmail.com> napisał(a):
>
> > Ok, I just tested again enabling:
> >
> > CONFIG_DEBUG_SYMBOLS=y
> > CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
> >
> > And the size didn't change. I think we need to investigate this
> > "intermittent" issue that happened in the mainline.
> >
> > But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will
> increase
> > the firmware size, I think those we can remove.
> >
> > BR,
> >
> > Alan
> >
> > On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
> >
> > > -1.
> > >
> > > This project is for devs, the main tool used by dev is the debugger and
> > > disabling debug symbols only breaks the workflow for users and makes
> life
> > > harder.
> > > Debug symbols have no effect on resource usage unless you're loading
> > > ELF directly on target (kernel mode, modules) or something is broken in
> > the
> > > build
> > > system or linker. Debug symbols are DWARF information that get embedded
> > > into
> > > the ELF not binary.
> > >
> > > śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
> > napisał(a):
> > >
> > > > Good idea! In the meantime we can just grep for these options and
> > remove
> > > > them.
> > > >
> > > > On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com>
> wrote:
> > > >
> > > > > Hi Everyone,
> > > > >
> > > > > Recently we faced an issue that was breaking the CI: the
> > > > > weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> > > > strange
> > > > > since this STM32H750 chip has 128KB Flash.
> > > > >
> > > > > My first thought was that some very heavy feature was enabled to
> nsh
> > > (by
> > > > > default nsh is supposed to be bare minimum). Then after analysing
> the
> > > > > .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> > > > >
> > > > > After disabling it, the Flash usage dropped to 55%. I didn't
> > > investigate
> > > > > yet what caused the memory use increase in the last few days.
> > > > >
> > > > > I think we should accept Michael's offer to use his membrowser to
> see
> > > > these
> > > > > usage increases before the issue triggers the limit. I asked if he
> > > could
> > > > > release it as a dual license (GPLv3 and Apache) to avoid the
> concerns
> > > > > raised on this PR, but didn't receive a response yet.
> > > > >
> > > > > In the past Greg never allowed DEBUG symbols and features to be
> > enabled
> > > > by
> > > > > default. I think we should keep this same rule because sooner or
> > later
> > > > > other boards will fail in the same way.
> > > > >
> > > > > BR,
> > > > >
> > > > > Alan
> > > > >
> > > >
> > >
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by raiden00pl <ra...@gmail.com>.
Why disable debug features for boards with a lot of flash?
These options provide important information, especially when testing the
board.
Where flash is low, debug features are most likely already disabled.
Disabling debug features on some boards already resulted in errors not
being
detected in the upstream and remaining there for months.
śr., 6 maj 2026 o 15:51 Alan C. Assis <ac...@gmail.com> napisał(a):
> Ok, I just tested again enabling:
>
> CONFIG_DEBUG_SYMBOLS=y
> CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
>
> And the size didn't change. I think we need to investigate this
> "intermittent" issue that happened in the mainline.
>
> But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will increase
> the firmware size, I think those we can remove.
>
> BR,
>
> Alan
>
> On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
>
> > -1.
> >
> > This project is for devs, the main tool used by dev is the debugger and
> > disabling debug symbols only breaks the workflow for users and makes life
> > harder.
> > Debug symbols have no effect on resource usage unless you're loading
> > ELF directly on target (kernel mode, modules) or something is broken in
> the
> > build
> > system or linker. Debug symbols are DWARF information that get embedded
> > into
> > the ELF not binary.
> >
> > śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com>
> napisał(a):
> >
> > > Good idea! In the meantime we can just grep for these options and
> remove
> > > them.
> > >
> > > On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
> > >
> > > > Hi Everyone,
> > > >
> > > > Recently we faced an issue that was breaking the CI: the
> > > > weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> > > strange
> > > > since this STM32H750 chip has 128KB Flash.
> > > >
> > > > My first thought was that some very heavy feature was enabled to nsh
> > (by
> > > > default nsh is supposed to be bare minimum). Then after analysing the
> > > > .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> > > >
> > > > After disabling it, the Flash usage dropped to 55%. I didn't
> > investigate
> > > > yet what caused the memory use increase in the last few days.
> > > >
> > > > I think we should accept Michael's offer to use his membrowser to see
> > > these
> > > > usage increases before the issue triggers the limit. I asked if he
> > could
> > > > release it as a dual license (GPLv3 and Apache) to avoid the concerns
> > > > raised on this PR, but didn't receive a response yet.
> > > >
> > > > In the past Greg never allowed DEBUG symbols and features to be
> enabled
> > > by
> > > > default. I think we should keep this same rule because sooner or
> later
> > > > other boards will fail in the same way.
> > > >
> > > > BR,
> > > >
> > > > Alan
> > > >
> > >
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by "Alan C. Assis" <ac...@gmail.com>.
Ok, I just tested again enabling:
CONFIG_DEBUG_SYMBOLS=y
CONFIG_DEBUG_SYMBOLS_LEVEL="-g"
And the size didn't change. I think we need to investigate this
"intermittent" issue that happened in the mainline.
But about CONFIG_DEBUG_FEATURES=y and its ERR/WARN/INFO, they will increase
the firmware size, I think those we can remove.
BR,
Alan
On Wed, May 6, 2026 at 10:39 AM raiden00pl <ra...@gmail.com> wrote:
> -1.
>
> This project is for devs, the main tool used by dev is the debugger and
> disabling debug symbols only breaks the workflow for users and makes life
> harder.
> Debug symbols have no effect on resource usage unless you're loading
> ELF directly on target (kernel mode, modules) or something is broken in the
> build
> system or linker. Debug symbols are DWARF information that get embedded
> into
> the ELF not binary.
>
> śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com> napisał(a):
>
> > Good idea! In the meantime we can just grep for these options and remove
> > them.
> >
> > On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
> >
> > > Hi Everyone,
> > >
> > > Recently we faced an issue that was breaking the CI: the
> > > weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> > strange
> > > since this STM32H750 chip has 128KB Flash.
> > >
> > > My first thought was that some very heavy feature was enabled to nsh
> (by
> > > default nsh is supposed to be bare minimum). Then after analysing the
> > > .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> > >
> > > After disabling it, the Flash usage dropped to 55%. I didn't
> investigate
> > > yet what caused the memory use increase in the last few days.
> > >
> > > I think we should accept Michael's offer to use his membrowser to see
> > these
> > > usage increases before the issue triggers the limit. I asked if he
> could
> > > release it as a dual license (GPLv3 and Apache) to avoid the concerns
> > > raised on this PR, but didn't receive a response yet.
> > >
> > > In the past Greg never allowed DEBUG symbols and features to be enabled
> > by
> > > default. I think we should keep this same rule because sooner or later
> > > other boards will fail in the same way.
> > >
> > > BR,
> > >
> > > Alan
> > >
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by raiden00pl <ra...@gmail.com>.
-1.
This project is for devs, the main tool used by dev is the debugger and
disabling debug symbols only breaks the workflow for users and makes life
harder.
Debug symbols have no effect on resource usage unless you're loading
ELF directly on target (kernel mode, modules) or something is broken in the
build
system or linker. Debug symbols are DWARF information that get embedded into
the ELF not binary.
śr., 6 maj 2026 o 15:31 Matteo Golin <ma...@gmail.com> napisał(a):
> Good idea! In the meantime we can just grep for these options and remove
> them.
>
> On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
>
> > Hi Everyone,
> >
> > Recently we faced an issue that was breaking the CI: the
> > weact-stm32h750:nsh was exhausting its Flash memory. And it is very
> strange
> > since this STM32H750 chip has 128KB Flash.
> >
> > My first thought was that some very heavy feature was enabled to nsh (by
> > default nsh is supposed to be bare minimum). Then after analysing the
> > .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
> >
> > After disabling it, the Flash usage dropped to 55%. I didn't investigate
> > yet what caused the memory use increase in the last few days.
> >
> > I think we should accept Michael's offer to use his membrowser to see
> these
> > usage increases before the issue triggers the limit. I asked if he could
> > release it as a dual license (GPLv3 and Apache) to avoid the concerns
> > raised on this PR, but didn't receive a response yet.
> >
> > In the past Greg never allowed DEBUG symbols and features to be enabled
> by
> > default. I think we should keep this same rule because sooner or later
> > other boards will fail in the same way.
> >
> > BR,
> >
> > Alan
> >
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by Matteo Golin <ma...@gmail.com>.
Good idea! In the meantime we can just grep for these options and remove
them.
On Wed, May 6, 2026, 3:27 PM Alan C. Assis <ac...@gmail.com> wrote:
> Hi Everyone,
>
> Recently we faced an issue that was breaking the CI: the
> weact-stm32h750:nsh was exhausting its Flash memory. And it is very strange
> since this STM32H750 chip has 128KB Flash.
>
> My first thought was that some very heavy feature was enabled to nsh (by
> default nsh is supposed to be bare minimum). Then after analysing the
> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
>
> After disabling it, the Flash usage dropped to 55%. I didn't investigate
> yet what caused the memory use increase in the last few days.
>
> I think we should accept Michael's offer to use his membrowser to see these
> usage increases before the issue triggers the limit. I asked if he could
> release it as a dual license (GPLv3 and Apache) to avoid the concerns
> raised on this PR, but didn't receive a response yet.
>
> In the past Greg never allowed DEBUG symbols and features to be enabled by
> default. I think we should keep this same rule because sooner or later
> other boards will fail in the same way.
>
> BR,
>
> Alan
>
Re: Disable CONFIG_DEBUG_SYMBOLS=y and CONFIG_DEBUG_FEATURES=y in the mainline
Posted by Tomek CEDRO <to...@cedro.info>.
We had this discussion when I was recently adding new board, ended up
disabling debug features on all default configurations.. but it still
may be part of the JUMBO configuration? :-)
--
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
On Wed, May 6, 2026 at 1:27 PM Alan C. Assis <ac...@gmail.com> wrote:
>
> Hi Everyone,
>
> Recently we faced an issue that was breaking the CI: the
> weact-stm32h750:nsh was exhausting its Flash memory. And it is very strange
> since this STM32H750 chip has 128KB Flash.
>
> My first thought was that some very heavy feature was enabled to nsh (by
> default nsh is supposed to be bare minimum). Then after analysing the
> .config I noticed that CONFIG_DEBUG_SYMBOLS=y was enabled.
>
> After disabling it, the Flash usage dropped to 55%. I didn't investigate
> yet what caused the memory use increase in the last few days.
>
> I think we should accept Michael's offer to use his membrowser to see these
> usage increases before the issue triggers the limit. I asked if he could
> release it as a dual license (GPLv3 and Apache) to avoid the concerns
> raised on this PR, but didn't receive a response yet.
>
> In the past Greg never allowed DEBUG symbols and features to be enabled by
> default. I think we should keep this same rule because sooner or later
> other boards will fail in the same way.
>
> BR,
>
> Alan