Commit graph

386 commits

Author SHA1 Message Date
daan
7e96634da4 merge from dev 2020-10-11 13:38:12 -07:00
daan
7114d5424a fix statistics to include padding correctly (issue #301) 2020-10-11 13:14:43 -07:00
daan
5d2b925f3e wrap MI_SECURE conditional in #ifdef to avoid warnings (issue #311) 2020-10-11 10:56:57 -07:00
daan
e1c38eef76 use allow_decommit option for both the segment cache and pages 2020-09-24 17:20:39 -07:00
daan
d89c23efce merge from dev 2020-09-14 09:03:52 -07:00
daan
840eba2874 improve handling of out-of-memory situations 2020-09-14 09:02:06 -07:00
Igor Kostenko
bf9c3bd088 Fix rare access violation on out of memory 2020-09-14 10:50:22 +01:00
daan
fa01875eb2 merge from dev (with is_pinned/is_large separation) 2020-09-08 17:54:58 -07:00
daan
14b8d27386 track pinned memory separately from large os pages 2020-09-08 16:46:03 -07:00
daan
037285ac09 refactor segment cache and map in a separate source file 2020-09-08 13:27:34 -07:00
daan
a948724340 merge from dev (bitmap split) 2020-09-08 10:33:30 -07:00
daan
3826132240 use dynamic initial commit 2020-09-06 14:51:20 -07:00
daan
f7dc4847f2 keep commit_mask live in the cache for better reuse 2020-09-05 21:58:32 -07:00
daan
63a9f45ba6 add initial mi_commit_mask abstraction 2020-09-05 19:39:10 -07:00
daan
36da7e91c5 Merge branch 'dev' into dev-slice 2020-09-05 18:17:22 -07:00
daan
f3f8afb580 add abandoned counter for debug purposes 2020-09-05 18:17:07 -07:00
daan
228b5f6e9d use atomic load for segment map 2020-09-03 12:19:04 -07:00
daan
03071dec0f merge from dev-atomic with new atomic interface 2020-09-03 12:13:09 -07:00
daan
900c97664a merge from dev-atomic 2020-09-03 09:47:01 -07:00
daan
c1a834e886 add checks for when memory commit fails to return NULL 2020-08-28 10:40:46 -07:00
daan
e4ddc75069 set delayed decommit mask more precisely to only decommit currently committed blocks 2020-08-28 08:46:51 -07:00
daan
2cffc3b851 merge from dev 2020-08-27 22:43:57 -07:00
daan
5805c39916 enable --std=c99 compilation; fix mingw compilation 2020-08-09 17:55:17 -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
a468430772 strengthen memory order of bit operations; insert memory fences 2020-07-26 14:19:30 -07:00
daan
a9f46dc86f reduce memory order constraints for better efficiency on ARM etc 2020-07-26 11:58:02 -07:00
daan
95afd0509f make segment abandoned_next atomic; tsan passes without warnings now (issue #130) 2020-07-25 23:50:22 -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
70be91d6b8 reduce tsan warning by ensuring a require edge; issue #130 2020-07-22 15:28:14 -07:00
daan
66048cb6cc fix return value for page_unreset 2020-05-19 13:31:24 -07:00
daan
6f73cc8b1d Merge branch 'master' into dev 2020-05-19 10:41:08 -07:00
daan
a09a64e29b add extra check in mi_page_unreset to not unreset for huge OS pages 2020-05-19 10:40:46 -07:00
daan
a52b38342d Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2020-05-19 09:55:08 -07:00
Daan Leijen
bf6b781e40 fix semicolon (#247) 2020-05-18 10:08:18 -07:00
daan
967513d536 add extra checks if unreset (commit) succeeds 2020-05-06 11:35:35 -07:00
daan
30799bce73 fix assertion for huge segments 2020-05-03 11:42:38 -07:00
daan
66e5484c1c fix assertions for huge pages in secure mode 2020-05-02 11:23:25 -07:00
daan
b8846f7a27 fix unprotect of guard pages 2020-05-02 10:51:10 -07:00
daan
84e1f7c92e merge from dev 2020-05-02 00:23:22 -07:00
daan
8bfd5ec865 improve arena cache to avoid full scans 2020-05-01 23:00:17 -07:00
daan
dcb3574cf0 fix assertions for huge segment free 2020-05-01 21:14:41 -07:00
daan
5cfdc39ff1 remove on-demand page commit option 2020-04-30 18:23:33 -07:00
daan
c609248f0e do delayed decommit if not reclaiming abandoned blocks 2020-04-30 13:30:19 -07:00
daan
f86519bca6 make lazy commit default; add commit check on segment allocation 2020-04-28 16:46:00 -07:00
daan
1b0de9b4cf merge from dev 2020-04-28 16:22:38 -07:00
daan
a5bf45cd1e add commit check on page reclaim 2020-04-23 21:01:06 -07:00
daan
74a01d05af check commit/protect if eager_commit is disabled 2020-04-23 20:48:55 -07:00
daan
0d3c141243 add check for if commit fails in segment allocation 2020-04-23 17:28:44 -07:00
daan
afc4f79a69 fix for ensuring heap initialization with static linking on windows on huge allocations (issues #221) 2020-04-06 12:15:12 -07:00
daan
84b9b8878e possible fix for issue #221 2020-04-06 11:49:32 -07:00