Jim Huang
|
5940d3bcce
|
Bump copyright date
Each source file has been changed according to relevant Git activities.
|
2021-04-24 16:35:11 +00:00 |
|
daan
|
5d2b925f3e
|
wrap MI_SECURE conditional in #ifdef to avoid warnings (issue #311)
|
2020-10-11 10:56:57 -07:00 |
|
daan
|
ef8e5d18a6
|
replace atomics with C11/C++ atomics with explicit memory order; passes tsan. Issue #130
|
2020-07-26 18:01:33 -07:00 |
|
daan
|
a9f46dc86f
|
reduce memory order constraints for better efficiency on ARM etc
|
2020-07-26 11:58:02 -07:00 |
|
daan
|
09ade02429
|
bring inline with C11 atomics; no volatile and cas order of expected/desired
|
2020-07-25 22:52:27 -07:00 |
|
daan
|
5a6d9ba807
|
fix handling of failing to allocate heap metadata on thread creation, issue #257
|
2020-06-17 19:07:32 -07:00 |
|
daan
|
a7d2bc8ad6
|
edit warning messages to be more consistent
|
2020-05-19 10:16:28 -07:00 |
|
daan
|
29cb8f369a
|
slight cleanup of f10ba4fa , #239
|
2020-05-05 10:24:16 -07:00 |
|
Daan
|
f10ba4fa44
|
Merge pull request #239 from asl/oom-collect
In OOM case try to force collect memory and retry the allocation
|
2020-05-05 10:16:28 -07:00 |
|
daan
|
9c0da9776d
|
fix assertion for huge block size
|
2020-05-03 11:43:57 -07:00 |
|
daan
|
097c007ba3
|
reduce page retire cycles based on object size
|
2020-05-02 00:19:20 -07:00 |
|
daan
|
5cfdc39ff1
|
remove on-demand page commit option
|
2020-04-30 18:23:33 -07:00 |
|
Anton Korobeynikov
|
fdd1cd821a
|
In OOM case try to force collect memory and retry the allocation.
|
2020-04-29 02:10:11 +03:00 |
|
daan
|
7745dde8d2
|
allow retirement for all object sizes (issue #212)
|
2020-03-16 15:31:37 -07:00 |
|
daan
|
baf08e8d54
|
fix size check on overflow when padding is enabled in debug mode
|
2020-02-17 09:59:34 -08:00 |
|
daan
|
9749c83ca0
|
fix build with debug and secure both enabled, issue #203
|
2020-02-13 09:16:41 -08:00 |
|
daan
|
aa68b8cbc7
|
improve encoding of padding canary and buffer overflow detection
|
2020-02-01 12:16:37 -08:00 |
|
daan
|
68112a2751
|
better padding implementation, more precise statistics
|
2020-01-31 20:34:24 -08:00 |
|
daan
|
b3dae128de
|
Merge branch 'dev' into dev-exp
|
2020-01-27 23:15:37 -08:00 |
|
daan
|
9c166d88f0
|
increase retire page size
|
2020-01-27 23:15:24 -08:00 |
|
daan
|
e628fc7067
|
cleanup reclaim logic
|
2020-01-26 12:39:11 -08:00 |
|
daan
|
4a2a0c2d50
|
initial abandon based on fine-grained reclamation
|
2020-01-23 19:50:35 -08:00 |
|
daan
|
66818bf632
|
use atomic yield on delayed-freeing; clarify code
|
2020-01-23 09:57:55 -08:00 |
|
daan
|
3bbbe6c686
|
enable atomic yield when delayed_freeing is encountered
|
2020-01-22 20:12:42 -08:00 |
|
daan
|
e3b16fe4ef
|
reduce type casts in atomic operations
|
2020-01-22 19:44:54 -08:00 |
|
daan
|
b77be05e40
|
only collect retired at fresh page allocation
|
2020-01-20 12:14:34 -08:00 |
|
daan
|
dc58388968
|
Add ability to register custom error function called on various error conditions; including ENOMEM
|
2020-01-17 19:59:55 -08:00 |
|
daan
|
c6037ac8f2
|
fix assertion index
|
2020-01-16 16:56:02 -08:00 |
|
daan
|
ad32eb1dfb
|
eager collect on page reclamation
|
2020-01-15 17:57:19 -08:00 |
|
daan
|
0099707af9
|
use delayed free for all pages; reduce size of the page structure for improved address calculation
|
2020-01-15 17:19:01 -08:00 |
|
daan
|
0956a05bf6
|
add argument pointer to the register deferred free callback
|
2020-01-15 10:21:32 -08:00 |
|
daan
|
12ef2816ed
|
fix bug exposed by commit 59fa286 where reclaimed pages could be stuck to NEVER_DELAYED
|
2020-01-08 19:00:03 -08:00 |
|
daan
|
45582d1fb5
|
revert a2a9230 (remove empty page removal on search): this is not generally valid when concurrent frees do not always add to thread_delayed_free.
|
2020-01-05 13:58:49 -08:00 |
|
daan
|
59fa286294
|
fix bug where continue would wrongly exit the do-while loop for delayed freeing
|
2020-01-05 13:52:07 -08:00 |
|
daan
|
a2a9230ad6
|
remove empty page removal on page search (no longer needed with retired collection and delayed freeing)
|
2020-01-03 22:52:52 -08:00 |
|
daan
|
2b108c8748
|
increase retire expiration to 4
|
2020-01-03 21:39:18 -08:00 |
|
daan
|
eeb623e6af
|
increase retire limit, collect retired pages
|
2020-01-03 17:06:41 -08:00 |
|
daan
|
77134e1ad0
|
update free list encoding to stronger formula with addition last
|
2019-12-28 15:17:49 -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
|
c6df7a199c
|
experimental eager page commit option
|
2019-11-24 22:02:40 -08:00 |
|
daan
|
6568059cc6
|
merge from dev
|
2019-11-21 16:28:28 -08:00 |
|
daan
|
74dbfc30be
|
improved security by encoding NULL values; double free mitigation on by default; more precise free list corruption detection
|
2019-11-21 15:21:23 -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 Leijen
|
56b9fac4bf
|
merge from dev
|
2019-11-20 13:31:04 -08:00 |
|
Daan Leijen
|
4d4a2885f5
|
use atomic read/write on the page->heap field where concurrent interaction is possible
|
2019-11-20 13:19:17 -08:00 |
|
daan
|
6ccfb5a93e
|
merge from dev
|
2019-11-07 11:00:50 -08:00 |
|
daan
|
9b65388807
|
fix space leak in secure mode where a non-null free list would be discarded
|
2019-11-07 10:59:19 -08:00 |
|
daan
|
36090dee5c
|
Merge branch 'dev' into dev-exp
|
2019-11-07 10:34:06 -08:00 |
|
daan
|
31d11f64d5
|
fix secure free list extension where a non-empty initial free list was discarded
|
2019-11-07 10:33:45 -08:00 |
|