I ran into exactly the same on a STM32MP157A-DK1 board (dual Cortex-A7, ARMv7 AEABI, CONFIG_ARM_UNWIND=y). An out-of-tree module whose functions GCC had placed in .text.unlikely (merged into .text by module.lds.S) left its .ARM.exidx.text.unlikely section unregistered, so an Oops inside the module produced an empty backtrace:
Call trace: unwind: Index not found bf102018 With this patch applied, the module's exidx is coalesced into a single .ARM.exidx output section, module_finalize() registers it against .text, and the full module backtrace is restored: Call trace: do_the_crash [oops_null] from level_one+0x8/0xc [oops_null] level_one [oops_null] from level_two+0x8/0xc [oops_null] level_two [oops_null] from trigger_write+0x18/0x20 [oops_null] trigger_write [oops_null] from full_proxy_write+0x54/0x78 full_proxy_write from vfs_write+0xd0/0x49c vfs_write from ksys_write+0x6c/0xf4 ksys_write from ret_fast_syscall+0x0/0x54 Tested on Linux 7.1.4 Tested-by: Ju Nan <[email protected]>

