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
|