On Sat Sep 12, 2026 at 12:01 AM CEST, Mathieu Othacehe via
lists.openembedded.org wrote:
> On 32-bit Arm, the .ARM.extab and .ARM.exidx unwinding sections do not
> always provide enough information to get a full backtrace on C++
> exceptions:
>
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117941
>
> In addition to those unwinding sections, GCC also emits unwinding
> instructions in DWARF format under the .debug_frame section. By
> instructing 'strip' not to remove that section, libunwind can use it
> to produce a full backtrace, for example when an unhandled C++
> exception is thrown.
>
> Add a PACKAGE_KEEP_SECTIONS variable, listing space separated ELF
> section names that should be kept around instead of stripped, for
> example:
>
> PACKAGE_KEEP_SECTIONS:pn-myrecipe = ".debug_frame"
>
> This variable is never applied to kernel modules, which are covered
> by CONFIG_UNWINDER_* instead.
>
> Add a oe-selftest case building core-image-minimal for qemuarm, and
> checking with readelf that busybox loses its .debug_frame section by
> default, but keeps it once PACKAGE_KEEP_SECTIONS is set.
>
> Signed-off-by: Mathieu Othacehe <[email protected]>
> ---
Hi Mathieu,
Thanks for your patch.
It looks like the added test is failing on the autobuilder:
2026-09-12 09:19:34,528 - oe-selftest - INFO -
package.PackageKeepSections.test_package_keep_sections (subunit.RemotedTestCase)
2026-09-12 09:19:34,529 - oe-selftest - INFO - ... ERROR
...
2026-09-12 09:19:34,529 - oe-selftest - INFO - 5: 28/54 531/772 (122.95s) (0
failed) (package.PackageKeepSections.test_package_keep_sections)
2026-09-12 09:19:34,529 - oe-selftest - INFO -
testtools.testresult.real._StringException: Traceback (most recent call last):
File
"/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/package.py",
line 248, in test_package_keep_sections
self.assertFalse(has_section(".debug_frame"),
~~~~~~~~~~~^^^^^^^^^^^^^^^^
File
"/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/layers/openembedded-core/meta/lib/oeqa/selftest/cases/package.py",
line 241, in has_section
tar.extract("./usr/bin/busybox.nosuid", path=unpackedfs)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File
"/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/python3.13/tarfile.py",
line 2365, in extract
tarinfo = self._get_extract_tarinfo(member, filter_function, path)
File
"/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/python3.13/tarfile.py",
line 2372, in _get_extract_tarinfo
tarinfo = self.getmember(member)
File
"/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/python3.13/tarfile.py",
line 2041, in getmember
raise KeyError("filename %r not found" % name)
KeyError: "filename './usr/bin/busybox.nosuid' not found"
https://autobuilder.yoctoproject.org/valkyrie/#/builders/48/builds/4649
https://autobuilder.yoctoproject.org/valkyrie/#/builders/35/builds/4842
Can you have a look at the issue?
Thanks,
Mathieu
--
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#245701):
https://lists.openembedded.org/g/openembedded-core/message/245701
Mute This Topic: https://lists.openembedded.org/mt/121206817/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-