Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								f1cdc1e484 
								
							 
						 
						
							
							
								
								remove disconcerting newline  
							
							 
							
							
							
						 
						
							2021-05-12 20:34:18 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								26b74b87bf 
								
							 
						 
						
							
							
								
								improve code reuse for malloc API entry points  
							
							 
							
							
							
						 
						
							2021-05-12 20:28:50 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								89faba4232 
								
							 
						 
						
							
							
								
								set errno in malloc_get_state to match glibc  
							
							 
							
							
							
						 
						
							2021-05-12 20:19:12 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								a45dacc57b 
								
							 
						 
						
							
							
								
								add support for glibc mallinfo2  
							
							 
							
							
							
						 
						
							2021-05-12 20:07:15 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								f9a8e7216b 
								
							 
						 
						
							
							
								
								purge slab memory even if using MAP_FIXED fails  
							
							 
							
							
							
						 
						
							2021-05-12 00:45:19 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								5c974bdf82 
								
							 
						 
						
							
							
								
								use region quarantine even if MAP_FIXED call fails  
							
							 
							
							... 
							
							
							
							This is a more sensible way of handling an out-of-memory failure in this
edge case. It doesn't matter much in practice. 
							
						 
						
							2021-05-12 00:20:03 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								2335f56713 
								
							 
						 
						
							
							
								
								add wrapper function for getting slot count  
							
							 
							
							
							
						 
						
							2021-05-10 07:04:50 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								13a3aa16d0 
								
							 
						 
						
							
							
								
								improve naming of adjust_size_for_canaries  
							
							 
							
							
							
						 
						
							2021-05-07 04:23:49 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								8bfa1a7dd5 
								
							 
						 
						
							
							
								
								use 1 slot for all extended size classes  
							
							 
							
							... 
							
							
							
							This reduces memory usage and improves security in combination with the
guard slab feature. 
							
						 
						
							2021-05-01 22:10:20 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								3952645318 
								
							 
						 
						
							
							
								
								avoid unused variable for some configurations  
							
							 
							
							
							
						 
						
							2021-03-31 12:12:49 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								f773a96b59 
								
							 
						 
						
							
							
								
								remove unnecessary sys/mman.h include  
							
							 
							
							
							
						 
						
							2021-03-22 12:25:22 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								b84af9b499 
								
							 
						 
						
							
							
								
								add wrapper for madvise  
							
							 
							
							
							
						 
						
							2021-03-22 12:24:26 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								e77ffa76d9 
								
							 
						 
						
							
							
								
								add initial malloc_trim slab quarantine purging  
							
							 
							
							... 
							
							
							
							This currently only purges the quarantines for extended size classes. 
							
						 
						
							2021-03-22 11:16:57 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								86b0b3e452 
								
							 
						 
						
							
							
								
								fix !CONFIG_EXTENDED_SIZE_CLASSES configuration  
							
							 
							
							
							
						 
						
							2021-03-21 18:09:02 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								a3b4c163eb 
								
							 
						 
						
							
							
								
								drop unused header  
							
							 
							
							
							
						 
						
							2021-03-05 00:35:10 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								ddd14bc421 
								
							 
						 
						
							
							
								
								avoid type comparison warning on some platforms  
							
							 
							
							
							
						 
						
							2021-02-16 17:18:35 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								29b09648d6 
								
							 
						 
						
							
							
								
								avoid undefined clz and shift in edge cases  
							
							 
							
							... 
							
							
							
							This is triggered when get_large_size_class is called with a size in the
range [1,4]. This can occur with aligned_alloc(8192, size). In practice,
it doesn't appear to cause any harm, but we shouldn't have any undefined
behavior for well-defined usage of the API. It also occurs if the caller
passes a pointer outside the slab region to free_sized but the expected
size is in the range [1,4]. That usage of free_sized is already going to
be considered undefined, but we should avoid undefined behavior in the
caller from triggering more undefined behavior when it's avoidable. 
							
						 
						
							2021-02-16 08:31:17 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Thibaut Sautereau 
								
							 
						 
						
							
							
							
							
								
							
							
								1984cb3b3d 
								
							 
						 
						
							
							
								
								malloc_object_size: avoid fault for invalid region  
							
							 
							
							... 
							
							
							
							It's the region pointer that can be NULL here, and p was checked at the
beginning of the function. 
							
						 
						
							2021-02-10 17:43:36 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Thibaut Sautereau 
								
							 
						 
						
							
							
							
							
								
							
							
								76860c72e1 
								
							 
						 
						
							
							
								
								malloc_usable_size: clean abort on invalid region  
							
							 
							
							... 
							
							
							
							It's the region pointer that can be NULL here, and p was checked at the
beginning of the function. Also fix the test accordingly. 
							
						 
						
							2021-02-10 17:41:17 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								5275563252 
								
							 
						 
						
							
							
								
								fix C++ sized deallocation check false positive  
							
							 
							
							... 
							
							
							
							This is a compatibility issue triggered when both slab canaries and the
C++ allocator overloads providing sized deallocation checks are enabled.
The boundary where slab allocations are turned into large allocations
due to not having room for the canary in the largest slab allocation
size class triggers a false positive in the sized deallocation check. 
							
						 
						
							2021-01-06 00:18:59 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								b90f650153 
								
							 
						 
						
							
							
								
								fix sized deallocation check with large sizes  
							
							 
							
							... 
							
							
							
							The CONFIG_CXX_ALLOCATOR feature enables sanity checks for sized
deallocation and this wasn't updated to handle the introduction of
performing size class rounding for large sizes. 
							
						 
						
							2020-11-10 13:53:32 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								b072022022 
								
							 
						 
						
							
							
								
								perform init sanity checks before MPK unsealing  
							
							 
							
							
							
						 
						
							2020-10-06 17:34:35 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								2bb1c39d31 
								
							 
						 
						
							
							
								
								add MPK support for stats retrieval functions  
							
							 
							
							
							
						 
						
							2020-10-06 17:32:25 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								0bf18b7c26 
								
							 
						 
						
							
							
								
								optimize malloc_usable_size enforce_init  
							
							 
							
							
							
						 
						
							2020-10-03 15:10:49 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								178d4f320f 
								
							 
						 
						
							
							
								
								harden checks for uninitialized usage  
							
							 
							
							
							
						 
						
							2020-10-02 15:06:29 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								483b1d7b8b 
								
							 
						 
						
							
							
								
								empty malloc_info output when stats are disabled  
							
							 
							
							
							
						 
						
							2020-09-17 17:42:18 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								96eca21ac5 
								
							 
						 
						
							
							
								
								remove thread_local macro workaround glibc < 2.28  
							
							 
							
							
							
						 
						
							2020-09-17 17:38:40 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								b4bbd09f07 
								
							 
						 
						
							
							
								
								change label for quarantined large allocations  
							
							 
							
							
							
						 
						
							2020-09-17 16:56:01 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								a88305c01b 
								
							 
						 
						
							
							
								
								support disabling region quarantine  
							
							 
							
							
							
						 
						
							2020-09-17 16:53:34 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								85c5c3736c 
								
							 
						 
						
							
							
								
								add stats tracking to special large realloc paths  
							
							 
							
							
							
						 
						
							2020-09-17 16:29:13 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								96a9bcf3a1 
								
							 
						 
						
							
							
								
								move deprecated glibc extensions to the bottom  
							
							 
							
							
							
						 
						
							2020-09-17 16:20:05 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								41fb89517a 
								
							 
						 
						
							
							
								
								simplify malloc_info code  
							
							 
							
							
							
						 
						
							2020-09-17 16:10:02 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								50e0f1334c 
								
							 
						 
						
							
							
								
								add is_init check to malloc_info  
							
							 
							
							
							
						 
						
							2020-09-17 16:07:10 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								9fb2791af2 
								
							 
						 
						
							
							
								
								add is_init check to h_mallinfo_arena_info  
							
							 
							
							
							
						 
						
							2020-09-17 16:00:03 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									anupritaisno1 
								
							 
						 
						
							
							
							
							
								
							
							
								8974af86d1 
								
							 
						 
						
							
							
								
								hardened malloc: iterate -> malloc_iterate  
							
							 
							
							... 
							
							
							
							Signed-off-by: anupritaisno1 <www.anuprita804@gmail.com> 
							
						 
						
							2020-09-15 00:37:23 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								dd7291ebfe 
								
							 
						 
						
							
							
								
								better wording for page size mismatch error  
							
							 
							
							
							
						 
						
							2020-08-05 18:10:53 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								bcb93cab63 
								
							 
						 
						
							
							
								
								avoid an ifdef  
							
							 
							
							
							
						 
						
							2020-08-04 17:22:03 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									rwarr627 
								
							 
						 
						
							
							
							
							
								
							
							
								f214bd541a 
								
							 
						 
						
							
							
								
								added check for if small allocations are free  
							
							 
							
							
							
						 
						
							2020-06-17 23:29:30 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								722974f4e9 
								
							 
						 
						
							
							
								
								remove trailing whitespace  
							
							 
							
							
							
						 
						
							2020-06-13 09:59:50 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									rwarr627 
								
							 
						 
						
							
							
							
							
								
							
							
								577524798e 
								
							 
						 
						
							
							
								
								calculates offset from start for small allocations  
							
							 
							
							
							
						 
						
							2020-06-13 01:27:32 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								467ba8440f 
								
							 
						 
						
							
							
								
								add comment explaining slab cache size  
							
							 
							
							
							
						 
						
							2020-05-24 09:36:43 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								067b3c864f 
								
							 
						 
						
							
							
								
								set slab cache sizes based on the largest slab  
							
							 
							
							
							
						 
						
							2020-05-24 09:31:02 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								4a6bbe445c 
								
							 
						 
						
							
							
								
								limit cached slabs based on max size class  
							
							 
							
							
							
						 
						
							2020-05-13 01:05:37 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								b672316bc7 
								
							 
						 
						
							
							
								
								use const for memory_corruption_check_small  
							
							 
							
							... 
							
							
							
							This currently causes a warning (treated as an error) on Android where
malloc_usable_size uses a const pointer. 
							
						 
						
							2020-04-30 16:06:32 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								029a2edf28 
								
							 
						 
						
							
							
								
								remove trailing whitespace  
							
							 
							
							
							
						 
						
							2020-04-30 16:03:45 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									rwarr627 
								
							 
						 
						
							
							
							
							
								
							
							
								35bd7cd76d 
								
							 
						 
						
							
							
								
								added memory corruption checking to malloc_usable_size for slab allocations  
							
							 
							
							
							
						 
						
							2020-04-29 18:06:15 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								19365c25d6 
								
							 
						 
						
							
							
								
								remove workaround for Linux kernel MPK fork bug  
							
							 
							
							
							
						 
						
							2020-04-24 02:51:39 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								0436227092 
								
							 
						 
						
							
							
								
								no longer need glibc pthread_atfork workaround  
							
							 
							
							
							
						 
						
							2020-03-29 11:40:12 -04:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								449962e044 
								
							 
						 
						
							
							
								
								disable obsolete glibc extensions elsewhere  
							
							 
							
							
							
						 
						
							2020-02-03 08:39:19 -05:00  
						
						
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Daniel Micay 
								
							 
						 
						
							
							
							
							
								
							
							
								a28da3c65a 
								
							 
						 
						
							
							
								
								use prefix for extended mallinfo functions  
							
							 
							
							
							
						 
						
							2019-09-07 18:33:24 -04:00