02b23f3733
Wire this up the same way ASAN works. Right now it's support only by recent clang versions (not gcc), and only in 64 bit mode. But it's capable of detecting uninitialized data reads, which ASAN is not. This support is wired into the sys_heap (and thus k_heap/k_malloc) layers, allowing detection of heap misuse like use-after-free. Note that there is one false negative lurking: due to complexity, in the case where a sys_heap_realloc() call is able to shrink memory in place, the now-unused suffix is not marked uninitialized immediately, making it impossible to detect use-after-free of those particular bytes. But the system will recover cleanly the next time the memory gets allocated. Also no attempt was made to integrate this handling into the newlib or picolibc allocators, though that should hopefully be possible via similar means. Signed-off-by: Andy Ross <andyross@google.com> |
||
---|---|---|
.. | ||
coredump | ||
gdbstub | ||
CMakeLists.txt | ||
Kconfig | ||
asan_hacks.c | ||
gdbstub.c | ||
gdbstub_backend.h | ||
thread_analyzer.c | ||
thread_info.c |