Hi,
In my project I am encountering a segfault when trying to allocate with `Genode::Heap` (GDB output is from base-linux):
``` Thread 19 "ld.lib.so" received signal SIGSEGV, Segmentation fault. [Switching to LWP 13744] 0x0000000050019fc8 in Genode::Allocator_avl_base::Block::find_best_fit (this=0x7ffff43efd78, size=8128, align=3, range=...) at /phantomuserland/genode/repos/base/src/lib/base/allocator_avl.cc:28 28 { ```
According to the backtrace (see backtrace.log, if interested), I suspect the `find_best_fit` method is being called in an infinite loop. I was not able to recreate this SEGFAULT in a fresh Genode project, so the issue must be from my project's code.
What's interesting is that the SEGFAULT occurs during a `push %rbx` instruction, so perhaps this is due to stack corruption?
I tried adding `-fsanitize=address` to my compile flags, however during `goa build` I get errors stating that the linker cannot find any references to asan symbols (see build.log). I checked, and I have libasan8 installed.
Is address sanitization supported in Genode projects? If so, how can I compile my project with it?
Best, Rumen
Hi Rumen,
address sanitization is currently not supported, only undefined behavior sanitization when using the Genode build system (not Goa).
What is the value of the stack pointer? Maybe it is a stack overflow?
Christian
On 17.02.26 10:31, Rumen Mitov via users wrote:
Hi,
In my project I am encountering a segfault when trying to allocate with `Genode::Heap` (GDB output is from base-linux):
Thread 19 "ld.lib.so" received signal SIGSEGV, Segmentation fault. [Switching to LWP 13744] 0x0000000050019fc8 in Genode::Allocator_avl_base::Block::find_best_fit (this=0x7ffff43efd78, size=8128, align=3, range=...) at /phantomuserland/genode/repos/base/src/lib/base/allocator_avl.cc:28 28 {According to the backtrace (see backtrace.log, if interested), I suspect the `find_best_fit` method is being called in an infinite loop. I was not able to recreate this SEGFAULT in a fresh Genode project, so the issue must be from my project's code.
What's interesting is that the SEGFAULT occurs during a `push %rbx` instruction, so perhaps this is due to stack corruption?
I tried adding `-fsanitize=address` to my compile flags, however during `goa build` I get errors stating that the linker cannot find any references to asan symbols (see build.log). I checked, and I have libasan8 installed.
Is address sanitization supported in Genode projects? If so, how can I compile my project with it?
Best, Rumen
users mailing list -- users@lists.genode.org To unsubscribe send an email to users-leave@lists.genode.org Archived at https://lists.genode.org/mailman3/hyperkitty/list/users@lists.genode.org/mes...
Hi Christian,
Thanks for confirming. The stack pointer was 0x412fc000, but I fixed the issue by compiling with "-fstack-protector-all". I guess it was a stack overflow.
Best, Rumen
________________________________________ From: Christian Prochaska via users users@lists.genode.org Sent: Tuesday, February 24, 2026 7:29 AM To: users@lists.genode.org Cc: Christian Prochaska Subject: Re: How To Add Address Sanitization
CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
Hi Rumen,
address sanitization is currently not supported, only undefined behavior sanitization when using the Genode build system (not Goa).
What is the value of the stack pointer? Maybe it is a stack overflow?
Christian
On 17.02.26 10:31, Rumen Mitov via users wrote:
Hi,
In my project I am encountering a segfault when trying to allocate with `Genode::Heap` (GDB output is from base-linux):
``` Thread 19 "ld.lib.so" received signal SIGSEGV, Segmentation fault. [Switching to LWP 13744] 0x0000000050019fc8 in Genode::Allocator_avl_base::Block::find_best_fit (this=0x7ffff43efd78, size=8128, align=3, range=...) at /phantomuserland/genode/repos/base/src/lib/base/allocator_avl.cc:28 28 { ```
According to the backtrace (see backtrace.log, if interested), I suspect the `find_best_fit` method is being called in an infinite loop. I was not able to recreate this SEGFAULT in a fresh Genode project, so the issue must be from my project's code.
What's interesting is that the SEGFAULT occurs during a `push %rbx` instruction, so perhaps this is due to stack corruption?
I tried adding `-fsanitize=address` to my compile flags, however during `goa build` I get errors stating that the linker cannot find any references to asan symbols (see build.log). I checked, and I have libasan8 installed.
Is address sanitization supported in Genode projects? If so, how can I compile my project with it?
Best, Rumen
_______________________________________________ users mailing list -- users@lists.genode.orgmailto:users@lists.genode.org To unsubscribe send an email to users-leave@lists.genode.orgmailto:users-leave@lists.genode.org Archived at https://lists.genode.org/mailman3/hyperkitty/list/users@lists.genode.org/mes...