| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 | menu "Heap memory debugging"    choice HEAP_CORRUPTION_DETECTION        prompt "Heap corruption detection"        default HEAP_POISONING_DISABLED        help            Enable heap poisoning features to detect heap corruption caused by out-of-bounds access to heap memory.            See the "Heap Memory Debugging" page of the IDF documentation            for a description of each level of heap corruption detection.        config HEAP_POISONING_DISABLED            bool "Basic (no poisoning)"        config HEAP_POISONING_LIGHT            bool "Light impact"        config HEAP_POISONING_COMPREHENSIVE            bool "Comprehensive"    endchoice    choice HEAP_TRACING_DEST        bool "Heap tracing"        default HEAP_TRACING_OFF        help            Enables the heap tracing API defined in esp_heap_trace.h.            This function causes a moderate increase in IRAM code side and a minor increase in heap function            (malloc/free/realloc) CPU overhead, even when the tracing feature is not used.            So it's best to keep it disabled unless tracing is being used.        config HEAP_TRACING_OFF            bool "Disabled"        config HEAP_TRACING_STANDALONE            bool "Standalone"            select HEAP_TRACING        config HEAP_TRACING_TOHOST            bool "Host-based"            select HEAP_TRACING    endchoice    config HEAP_TRACING        bool        default F        help            Enables/disables heap tracing API.    config HEAP_TRACING_STACK_DEPTH        int "Heap tracing stack depth"        range 0 0 if IDF_TARGET_ARCH_RISCV # Disabled for RISC-V due to `__builtin_return_address` limitation        default 0 if IDF_TARGET_ARCH_RISCV        range 0 10        default 2        depends on HEAP_TRACING        help            Number of stack frames to save when tracing heap operation callers.            More stack frames uses more memory in the heap trace buffer (and slows down allocation), but            can provide useful information.    config HEAP_TASK_TRACKING        bool "Enable heap task tracking"        depends on !HEAP_POISONING_DISABLED        help            Enables tracking the task responsible for each heap allocation.            This function depends on heap poisoning being enabled and adds four more bytes of overhead for each block            allocated.    config HEAP_ABORT_WHEN_ALLOCATION_FAILS        bool "Abort if memory allocation fails"        default n        help            When enabled, if a memory allocation operation fails it will cause a system abort.endmenu
 |