daan
7da00c1220
wip: full decommit delay, for arena cache as well
2019-11-21 20:57:32 -08:00
daan
321e18777e
wip: delayed decommit on segments
2019-11-21 19:53:43 -08:00
daan
1066be1594
merge from dev-exp
2019-11-21 17:03:30 -08:00
daan
50575b12c0
Merge branch 'dev' into dev-exp
2019-11-21 16:29:59 -08:00
daan
41caf6d0f8
set secure default to 0
2019-11-21 16:29:46 -08:00
daan
6568059cc6
merge from dev
2019-11-21 16:28:28 -08:00
daan
42a0666770
update documentation
2019-11-21 16:24:10 -08:00
daan
b7d9ee8830
azure pipeline logo shows dev branch
2019-11-21 16:20:35 -08:00
daan
f27c87c03c
update documentation
2019-11-21 16:19:47 -08:00
daan
c6c24f9c2e
update documentation
2019-11-21 16:17:47 -08:00
daan
7586225fc5
add secure build to azure pipeline
2019-11-21 16:10:21 -08:00
daan
d55ab50a84
update version to 1.2
2019-11-21 16:10:04 -08:00
daan
b820009df7
update documentation
2019-11-21 16:09:34 -08:00
daan
5c8721f0b8
update documentation
2019-11-21 15:59:54 -08:00
daan
9a5189aa83
add vs2019 project filters
2019-11-21 15:42:22 -08:00
daan
bc1ff7e7fd
update windows redirect, issue #170
2019-11-21 15:28:10 -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
1674d551ff
add verbose message with secure build level
2019-11-20 20:46:13 -08:00
Daan Leijen
049dbf41ba
fix commit bits for huge page allocations
2019-11-20 15:44:07 -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
30e2c54adb
remove delayed reset option (for now)
2019-11-20 14:13:02 -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 Leijen
94bfb47725
update stress test for more realisitic size distribution
2019-11-20 12:59:26 -08:00
daan
fd3ce5dc7d
improve stress test
2019-11-15 16:28:11 -08:00
Daan Leijen
8637f113d5
improve test-stress to run multiple iterations
2019-11-15 14:09:17 -08:00
Daan Leijen
dccffea662
fix pr #173 by @zerodefect to use case-insensitive matching of the build type; also use MI_DEBUG_FULL option (instead of MI_CHECK_FULL)
2019-11-14 11:01:05 -08:00
daan
17ade3fca5
merge from dev
2019-11-13 17:52:20 -08:00
daan
314dcd59c2
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2019-11-13 17:23:54 -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
9b7a29c5da
Merge pull request #172 from aesophor/dev
...
Avoid the use of variable argument list function
2019-11-13 16:28:09 -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
Marco Wang
29919a938d
Avoid the use of variable argument list function
2019-11-13 13:19:21 +08:00
Daan Leijen
bdb8274819
change max_numa_node to max_numa_nodes option
2019-11-12 12:04:43 -08:00
daan
d4f54dcf30
remove numaif dependency on linux
2019-11-12 10:37:15 -08:00
daan
867d78f877
reserve huge OS pages earlier on at process_init
2019-11-12 10:19:52 -08:00
daan
af746ca4c1
inline bitmap_mask
2019-11-12 10:17:39 -08:00
daan
ef179a6377
avoid allocation at numa node detection on linux
2019-11-12 10:16:59 -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
5e6754f3f7
track commit status per block in a region
2019-11-11 15:45:31 -08:00
daan
db3f1c4bfa
add commit info to arenas
2019-11-11 15:26:11 -08:00
daan
741a80256d
merge from dev-exp
2019-11-11 14:51:16 -08:00
daan
2bb058bd25
remove cache_reset parameter
2019-11-11 14:44:32 -08:00
daan
534e1e39ef
allow allocation in committed regions even if not requested
2019-11-11 14:42:29 -08:00
daan
93a6463383
only allow commit delay for small and medium objects
2019-11-11 14:16:45 -08:00
daan
83a066fd2d
remove reset_decommits option
2019-11-11 09:46:02 -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
aa61e6381d
Merge branch 'dev-arena' of https://github.com/microsoft/mimalloc into dev-arena
2019-11-10 10:47:55 -08:00
Daan Leijen
b04206a9d3
add os cache to arena
2019-11-10 10:10:10 -08:00
Daan Leijen
d2279b2a3f
update test-stress with better object distribution
2019-11-10 08:13:40 -08:00
Daan Leijen
268698b9ef
fix vs2019 project
2019-11-10 08:00:51 -08:00
Daan Leijen
fed0068dac
merge from dev-exp; bitmap based arena
2019-11-10 07:56:40 -08:00
daan
194008b869
merge
2019-11-09 20:37:16 -08:00
Daan Leijen
9f08ddd0d0
refactor regions; add commit tracking on a segment basis
2019-11-09 19:30:53 -08:00
Daan Leijen
f0e02bab03
pr #168 by @zerodefect to update the install location
2019-11-08 12:22:03 -08:00
Daan Leijen
7b72a4cd50
fix region suitable bug
2019-11-08 11:55:43 -08:00
daan
13f5e6e43e
fix numa node check in regions
2019-11-07 18:09:30 -08:00
daan
6ccfb5a93e
merge from dev
2019-11-07 11:00:50 -08:00
daan
56887aeb2f
add MI_SECURE_FULL=ON as a cmake option to include double free mitigation
2019-11-07 10:59:45 -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
27f1a8b3d2
fix avg display; set secure default to 0`
2019-11-07 10:35:30 -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
daan
378716c467
refactor and improve atomic bitmap usage
2019-11-07 10:26:52 -08:00
daan
b09282bc0d
change arena allocator to atomic bitmap as well
2019-11-06 22:49:01 -08:00
daan
00e19cad9a
refactor region code, split out atomic bitmap
2019-11-06 21:37:23 -08:00
daan
2887266063
optimize get numa node for single node systems
2019-11-06 14:17:36 -08:00
daan
829fd872f4
initial delay slots
2019-11-04 11:48:41 -08:00
daan
c3ef23e4f6
Merge branch 'dev-exp' into dev-arena
2019-11-04 09:40:25 -08:00
daan
3d0a1e249f
remove all floating point types and arithmetic
2019-11-04 09:40:10 -08:00
daan
62df2e2df9
merge from dev-exp
2019-11-04 08:56:42 -08:00
daan
2749612c5f
merge from dev
2019-11-04 08:54:53 -08:00
daan
c38af8f7c1
merge d1d65fbc: make max error messages configurable
2019-11-04 08:49:59 -08:00
daan
aece753dce
fix output during preloading enabling stderr only after the crt has loaded
2019-11-04 08:46:17 -08:00
daan
8afd06b248
use int64 for time (instead of double)
2019-11-04 08:44:40 -08:00
daan
2b005addd3
merge from dev-exp
2019-11-03 13:37:03 -08:00
daan
9d6a5acb22
fix unix build warnings
2019-11-03 13:34:54 -08:00
daan
d1d65fbca4
make max error messages configurable
2019-11-03 13:25:41 -08:00
daan
520a8dafee
divide huge pages more even
2019-11-03 13:25:28 -08:00
daan
f36ec5d9d8
reserve huge pages incrementally
2019-11-03 13:16:07 -08:00
daan
1a6d150687
merge from dev-exp
2019-11-03 12:21:22 -08:00
daan
e320488791
add numa nodes to stats
2019-11-03 12:18:32 -08:00
daan
723fbba259
fix output during preloading enabling stderr only after the crt has loaded
2019-11-03 12:18:20 -08:00
daan
5bdcda30b0
merge from dev-exp
2019-11-02 20:12:22 -07:00
daan
62cd0237fc
fix aligned huge page allocation on windows
2019-11-02 17:49:34 -07:00
daan
ee323aabac
fix vs2017 build
2019-11-02 15:56:21 -07: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
ae092e05a2
Merge branch 'dev-exp' into dev-arena
2019-11-02 10:39:27 -07:00
daan
70748ee1ee
fix missing semi colon
2019-11-02 10:39:09 -07:00
daan
b0182b2376
Merge branch 'dev-exp' into dev-arena
2019-11-02 10:30:33 -07:00
daan
a69016c33e
improve and document numa support
2019-11-02 10:30:16 -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
6916e6590f
Merge branch 'dev-exp' into dev-arena
2019-11-01 20:30:32 -07:00
daan
57dd69265a
normalize numa node
2019-11-01 20:30:01 -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