esp-idf/components/heap
Ivan Grokhotkov 11caa6fcf2 heap: recognize 0x40000000 as an address terminating the backtrace
On Xtensa, backtrace can not recover the two most significant bits of
the address, as the window call size is encoded in these bits.
Because of this, __builtin_return_address modifies these MSBs to
match those of the callee, "fixing" the address. An unfortunate side
effect is that the zero return address, which usually terminates the
backtrace, gets converted to 0x40000000. While there is a valid
instruction at this address, its occurrence in the backtrace is
highly unlikely: this is the first instruction of WindowOverflow4
vector, and IDF apps switch VECBASE to an IRAM location very early at
startup.
2021-06-08 17:28:00 +10:00
..
include components/bt: Fix broken API esp_bt_mem_release() for parameter ESP_BT_MODE_BTDM 2018-08-31 14:28:23 +00:00
test multi_heap: ensure that malloc(0) return NULL pointer in any poisoning configuration 2020-03-27 14:35:50 -03:00
test_multi_heap_host multi_heap: Fix bug when start of heap is unaligned 2018-12-20 01:40:05 +00:00
CMakeLists.txt mbedtls: align CMake build with corresponding component.mk 2018-11-29 16:23:06 +05:30
component.mk tools: implement linker script generation 2018-11-16 12:42:02 +08:00
heap_caps_init.c heap: Add integer overflow checks on MALLOC_CAP_32BIT & MALLOC_CAP_EXEC 2019-03-20 18:30:25 +11:00
heap_caps.c heap: Add integer overflow checks on MALLOC_CAP_32BIT & MALLOC_CAP_EXEC 2019-03-20 18:30:25 +11:00
heap_private.h heap: Add integer overflow checks on MALLOC_CAP_32BIT & MALLOC_CAP_EXEC 2019-03-20 18:30:25 +11:00
heap_task_info.c heap: Add task tracking option for heap usage monitoring 2018-02-20 10:32:06 +11:00
heap_trace.c heap: recognize 0x40000000 as an address terminating the backtrace 2021-06-08 17:28:00 +10:00
Kconfig Correct Kconfigs according to the coding style 2019-01-29 13:37:01 +01:00
linker.lf tools: implement linker script generation 2018-11-16 12:42:02 +08:00
multi_heap_config.h Try to merge tail with next block when splitting 2018-04-03 12:30:52 +10:00
multi_heap_internal.h heap: Add task tracking option for heap usage monitoring 2018-02-20 10:32:06 +11:00
multi_heap_platform.h heap: fix build failure due to missing header 2018-04-26 11:08:58 +05:30
multi_heap_poisoning.c heap: Only fill new heaps with FREE_FILL_PATTERN if Comprehensive poisoning is on 2020-04-27 16:34:43 +10:00
multi_heap.c multi_heap: Fix bug when start of heap is unaligned 2018-12-20 01:40:05 +00:00