| 
								
								
									 Daniel Micay | 4cd61e281d | add workaround for bug in Linux MPK implementation | 2018-10-23 19:08:33 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 299bd6d414 | add missing thread unseal / seal for atfork hooks | 2018-10-23 16:28:54 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 9d1567ce16 | make safe_flag check compatible with POSIX sh | 2018-10-23 15:55:45 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 59def67979 | add inlined check for -1 with pkey_set | 2018-10-23 08:00:34 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 05ac717cf2 | work around -Wcast-align=strict error with old GCC | 2018-10-23 07:23:07 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 0b963078d5 | guard metadata with Memory Protection Keys (MPK) | 2018-10-23 01:11:31 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | ac8c68de53 | enable pointer cast warnings | 2018-10-21 15:50:26 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 9a43302868 | add enforce_init call to other realloc code path | 2018-10-20 02:27:06 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 6a408ad017 | add init calls to malloc_enable/malloc_disable | 2018-10-19 21:46:36 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 173ed53539 | use consistent code style in chacha.c | 2018-10-19 17:09:41 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 1d2c10f5bb | tweak canary awareness in offset test | 2018-10-19 16:19:29 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 64b655f062 | set scope of planned metadata protection | 2018-10-18 20:35:25 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | e37b36c9dd | update configuration documentation again | 2018-10-18 20:18:55 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | f0a6f551eb | tweak code style | 2018-10-18 19:35:21 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | cf053e74d1 | metadata region unification is completed | 2018-10-18 16:10:49 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 1e03b004f5 | move slab_info to main metadata region | 2018-10-18 16:01:04 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 3f1962dd2b | use min macro for realloc copy size | 2018-10-18 15:25:14 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | fe30f6c2ea | delay allocating slab metadata from reservation | 2018-10-18 15:20:42 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 74139112d0 | explain the purpose of CONFIG_CXX_ALLOCATOR | 2018-10-18 14:57:33 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 64e9f6797a | use offsetof for allocator_state memory protection | 2018-10-16 15:52:41 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 67ada4d309 | document padding for allocator state | 2018-10-15 19:10:36 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | da8e9aa1d8 | document allocator state region | 2018-10-15 15:44:31 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 1c9e0d88a5 | use the initial region table slots again | 2018-10-15 15:18:45 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | da0df69d22 | move region hash tables into main state region | 2018-10-15 15:07:59 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 1e5dec97e0 | move slab allocator state into main state region | 2018-10-15 14:58:22 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | e8eca2d430 | explain the production-oriented design rationale | 2018-10-15 04:07:20 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | fde9fc2ece | protect region allocator state with random guards | 2018-10-14 22:41:17 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 124d958da1 | document free slabs quarantine | 2018-10-14 22:19:10 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 3504465584 | document progress on protected allocator state | 2018-10-14 22:15:48 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | da6fd5b5ef | move slab allocator state to a dedicated mapping | 2018-10-14 22:06:38 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 1190966846 | rename region_info to region_metadata | 2018-10-14 22:06:38 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | a083ff79e1 | move region allocator state to a dedicated mapping | 2018-10-14 22:06:33 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | d728afae8e | add configuration option for testing with UBSan | 2018-10-14 18:58:54 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 535466fdfd | avoid undefined shifts with multi-word bitmaps | 2018-10-14 18:58:17 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 7798b2693e | fix loop exit condition boundary for get_free_slot | 2018-10-14 18:49:48 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 3c0a448c3e | enable more tidy checks | 2018-10-14 18:33:40 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 9ea2fd6667 | write_after_free_check only reads data | 2018-10-14 18:30:20 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | d35674c67e | expected_size is not an output parameter | 2018-10-14 18:28:01 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 8b033c5e44 | make ALIGNMENT_CEILING into a function | 2018-10-14 18:23:42 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 118549451b | add tidy target to the Makefile for clang-tidy | 2018-10-14 18:05:08 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | b66ca56ba1 | initialize ptr to nullptr in handle_out_of_memory It will break out of the loop in the first iteration if there's no
handler or the handler throws an out-of-memory error. | 2018-10-14 18:00:55 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 4fbfe4d3ec | fix canary space reservation for pvalloc | 2018-10-14 17:49:36 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | f11c448a0d | slightly reorganize slab metadata | 2018-10-14 15:13:06 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 3db3e167ed | remove usage of ATOMIC_VAR_INIT This was never truly required in practice and has been officially
obsoleted in C17. | 2018-10-13 16:50:49 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 65a7014b48 | randomize free slabs reuse | 2018-10-13 13:57:00 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 83df37436d | fix usage of pthread_atfork for glibc < 2.28 | 2018-10-12 16:03:15 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 0a64c7d6a1 | document the randomized array in the quarantine | 2018-10-12 15:10:35 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | 6669166fe9 | move memory_unmap outside of lock scope | 2018-10-12 15:06:51 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | b2007ad3d9 | implement randomization for the region quarantine | 2018-10-12 15:03:59 -04:00 |  | 
				
					
						| 
								
								
									 Daniel Micay | ac2b940f0f | fix compatibility with older GCC versions Avoid relying on compiler extensions supporting more flexible usage of
constants closer to how it works in C++. | 2018-10-11 18:12:49 -04:00 |  |