daan
88b141cf1f
ensure proper padding for the page structure
2020-01-13 20:48:37 -08:00
daan
4a27ea1643
merge from dev
2020-01-13 18:01:34 -08:00
daan
eeb623e6af
increase retire limit, collect retired pages
2020-01-03 17:06:41 -08:00
daan
e3391d9a53
stronger encoding of free lists using two keys per page
2019-12-28 00:57:42 -08:00
daan
ba87a39d9f
updated random cookie generation using OS primitives and chacha20
2019-12-22 19:37:49 -08:00
daan
1066be1594
merge from dev-exp
2019-11-21 17:03:30 -08:00
daan
6568059cc6
merge from dev
2019-11-21 16:28:28 -08:00
daan
1674d551ff
add verbose message with secure build level
2019-11-20 20:46:13 -08:00
Daan Leijen
211f1aa519
remove reset delay slots; add reset tracking per page and segment
2019-11-20 14:55:12 -08:00
daan
17ade3fca5
merge from dev
2019-11-13 17:52:20 -08:00
daan
a4ed63d127
Adresses pr #165 and issue #164 by @colesbury:
...
On Mac OS, the thread-local _mi_default_heap may get reset before
_mi_thread_done is called, leaking the default heap on non-main threads.
Now the current default heap is also stored in mi_pthread_key (or mi_fls_key
on Windows). The _mi_thread_done function is called with this value.
2019-11-13 17:22:03 -08:00
Daan Leijen
d01ed42bcb
replace max_numa_nodes by use_numa_nodes (to help with wrong detection of numa nodes on WSL for example)
2019-11-13 13:35:50 -08:00
daan
867d78f877
reserve huge OS pages earlier on at process_init
2019-11-12 10:19:52 -08:00
daan
165ee45845
initialize delay slots for the main thread
2019-11-11 17:31:48 -08:00
daan
a0958b2da6
enable more reset delay slots
2019-11-11 17:06:16 -08:00
daan
21bbb1be87
fix warnings
2019-11-10 12:36:55 -08:00
daan
181bef382c
merge dev-exp
2019-11-10 11:39:53 -08:00
Daan Leijen
fed0068dac
merge from dev-exp; bitmap based arena
2019-11-10 07:56:40 -08:00
daan
b09282bc0d
change arena allocator to atomic bitmap as well
2019-11-06 22:49:01 -08:00
daan
829fd872f4
initial delay slots
2019-11-04 11:48:41 -08:00
daan
3d0a1e249f
remove all floating point types and arithmetic
2019-11-04 09:40:10 -08:00
daan
e0b8ec7f54
merge with dev-exp
2019-11-02 11:56:19 -07:00
daan
fd9d8c85ae
change numa support on linux to use getcpu
2019-11-02 11:55:03 -07:00
daan
08c4726043
merge from dev-exp
2019-11-01 22:04:20 -07:00
daan
2c12d7f223
optimized numa calls; better Linux support
2019-11-01 22:01:52 -07:00
daan
4be5b14869
merge from dev-exp
2019-11-01 20:19:32 -07:00
daan
2d10c78587
fix linux compilation
2019-11-01 20:19:00 -07:00
daan
6b26f0cb17
merge from dev-exp (numa support)
2019-11-01 20:08:56 -07:00
daan
a6499be074
initial numa support for arenas
2019-11-01 19:53:07 -07:00
daan
b73beede34
merge from dev
2019-10-30 15:19:34 -07:00
daan
b052d3b731
enable double free and heap corruption detection in debug mode
2019-10-28 15:54:33 -07:00
daan
081e2d1eb6
fix statistics display
2019-10-28 13:43:42 -07:00
daan
9d4f57abf3
merge from dev-win
2019-10-28 12:33:01 -07:00
daan
25246070ae
fix double free check in secure = 4 mode; inline _mi_ptr_cookie
2019-10-19 08:34:18 -07:00
daan
4b15e2ed97
merge from dev
2019-10-17 18:24:35 -07:00
daan
5de851a84d
update page_flags to have more portable definition
2019-10-17 16:48:16 -07:00
daan
26c27fbf58
use uint8_t bit fields, and improve portability of page_flags type
2019-10-17 12:07:26 -07:00
daan
5744f90882
remove thread init/done verbose messages
2019-09-17 17:35:20 -07:00
daan
23155c5d71
add recursion guard to deferred callback
2019-09-09 08:02:41 -07:00
daan
3bbc047ba6
reserve huge pages returns actual number of pages reserved
2019-09-04 12:26:02 -07:00
daan
6c43ae2bde
add later thread-done invokation; add mi_is_redirected call
2019-09-04 12:00:41 -07:00
daan
d1bd1644d5
support zero-initialized memory detection
2019-09-02 13:16:52 -07:00
daan
f35f643508
merge from dev
2019-08-29 09:52:22 -07:00
daan
25dca38ef9
merge from dev-win
2019-08-26 12:47:16 -07:00
daan
a654732d99
merge from dev new atomics
2019-08-26 12:30:03 -07:00
daan
2c19388bcf
initialize mimalloc options at process load
2019-08-26 11:44:41 -07:00
daan
baabc77503
use proper atomic initialization macros
2019-08-25 23:02:41 -07:00
daan
612b2cc9b7
clean up segment slice handling
2019-08-24 12:20:32 -07:00
daan
082f012a91
merge from dev-win
2019-08-23 21:56:28 -07:00
daan
6c6fcad242
remove threadid from pages and keep page flags separate (cherry picked)
2019-08-23 21:42:24 -07:00