| 
									
										
										
										
											2017-05-08 15:25:30 +10:00
										 |  |  | menu "Heap memory debugging" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-25 17:10:53 +01:00
										 |  |  |     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 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-12 20:29:47 +03:00
										 |  |  |     choice HEAP_TRACING_DEST | 
					
						
							|  |  |  |         bool "Heap tracing" | 
					
						
							|  |  |  |         default HEAP_TRACING_OFF | 
					
						
							| 
									
										
										
										
											2019-01-25 17:10:53 +01:00
										 |  |  |         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 | 
					
						
							| 
									
										
										
										
											2018-12-12 20:29:47 +03:00
										 |  |  |             (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. | 
					
						
							| 
									
										
										
										
											2019-01-25 17:10:53 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     config HEAP_TRACING_STACK_DEPTH | 
					
						
							|  |  |  |         int "Heap tracing stack depth" | 
					
						
							|  |  |  |         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. | 
					
						
							| 
									
										
										
										
											2018-01-10 01:14:47 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-27 17:09:15 -03:00
										 |  |  |     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. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-08 15:25:30 +10:00
										 |  |  | endmenu |