daan
|
6b7356a10a
|
make mimalloc compile with the highest warning level on msvc
|
2020-01-16 18:12:01 -08:00 |
|
daan
|
b84b11b6a9
|
update readme
|
2020-01-16 18:11:29 -08:00 |
|
daan
|
c6037ac8f2
|
fix assertion index
|
2020-01-16 16:56:02 -08:00 |
|
daan
|
f750e793ff
|
ensure unique build names for C++ azure pipeline jobs
|
2020-01-16 16:52:44 -08:00 |
|
daan
|
5c82b459d6
|
enable debug clang++ compilation in azure pipelines
|
2020-01-16 16:49:59 -08:00 |
|
daan
|
3f8b8b7a55
|
initialize thread_delayed_free field atomically
|
2020-01-16 16:45:34 -08:00 |
|
daan
|
da709bcf11
|
test for gcc version for aligned new/delete overrides
|
2020-01-16 16:30:44 -08:00 |
|
daan
|
7a98a461a3
|
fix type of bitmap field to avoid C++ error on older gcc
|
2020-01-16 16:21:59 -08:00 |
|
daan
|
3447debf26
|
add Linux gcc C++ build to azure pipeline
|
2020-01-16 16:08:23 -08:00 |
|
daan
|
a0bee081dd
|
use proper C++11 check for noexcept attribute
|
2020-01-16 15:58:48 -08:00 |
|
daan
|
7a9502973d
|
rearrange STL allocator code: remove pragma, ifdef for C++11
|
2020-01-16 15:57:11 -08:00 |
|
Daan
|
2d54553b7a
|
Merge pull request #188 from kile0/kile/stl
Create an STL allocator for mimalloc
|
2020-01-16 15:33:44 -08:00 |
|
Daan
|
97bd204c42
|
Merge branch 'dev' into kile/stl
|
2020-01-16 15:33:13 -08:00 |
|
Kirsten Lee
|
526bee6843
|
merge stl and main header
|
2020-01-16 15:17:15 -08:00 |
|
Kirsten Lee
|
1b2b7404f7
|
flip the order of includes for ease of use
|
2020-01-16 14:54:13 -08:00 |
|
daan
|
24f8bcbc8f
|
add explicit calling convention to registered functions
|
2020-01-16 14:25:09 -08:00 |
|
daan
|
4e91eab8fc
|
specialize mi_mallocn for count=1
|
2020-01-16 14:12:37 -08:00 |
|
daan
|
8d8f355ed0
|
add option to reset eagerly when a segment is abandoned
|
2020-01-16 11:25:02 -08:00 |
|
daan
|
b8072aaacb
|
fix debug build
|
2020-01-16 03:54:51 -08:00 |
|
daan
|
9629d73188
|
fix options
|
2020-01-15 18:07:29 -08:00 |
|
daan
|
7a1e86fc20
|
merge from dev
|
2020-01-15 18:03:37 -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
|
202246425b
|
bump version to 1.4 for further development
|
2020-01-15 12:16:53 -08:00 |
|
daan
|
c9b5ac80b3
|
update page reset queue to just do delayed page resets
|
2020-01-15 12:00:44 -08:00 |
|
daan
|
783e3377f7
|
add output argument to stat printing
v1.3.0
|
2020-01-15 10:53:54 -08:00 |
|
daan
|
0956a05bf6
|
add argument pointer to the register deferred free callback
|
2020-01-15 10:21:32 -08:00 |
|
daan
|
f92a2a7264
|
add argument pointer to the register output routine
|
2020-01-15 10:18:32 -08:00 |
|
daan
|
941c55ee42
|
wip: first implementation of page free list on segments for effecient delayed page reset
|
2020-01-14 21:47:18 -08:00 |
|
daan
|
65f4f5144b
|
fix out-of-bounds error in huge OS page bitmap
|
2020-01-13 17:06:25 -08:00 |
|
daan
|
5f61a9e896
|
add mprotect error when the mmap limit might be reached in secure mode (see issue #77)
|
2020-01-09 17:52:28 -08:00 |
|
daan
|
be10ebea35
|
build debug and secure versions on macOS in Azure pipelines
|
2020-01-08 23:54:56 -08:00 |
|
daan
|
313d4b8ffd
|
fix test on Windows in azure pipelines
|
2020-01-08 23:47:40 -08:00 |
|
daan
|
7575b58d7a
|
fix test on Windows in azure pipelines
|
2020-01-08 23:46:56 -08:00 |
|
daan
|
ce3f327f21
|
add test pass to Windows build
|
2020-01-08 23:40:57 -08:00 |
|
daan
|
403276d11e
|
build release and debug build on Windows
|
2020-01-08 23:32:42 -08:00 |
|
daan
|
8f75444e7a
|
fix windows debug build at MI_DEBUG=2
|
2020-01-08 23: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
|
940df53b0a
|
fix iteration count display in stress test
|
2020-01-08 17:57:17 -08:00 |
|
daan
|
683d8998d4
|
fix potential A-B-A problem with segment abandonment; noticed by Manual Poeter and Sam Gross
|
2020-01-08 17:45:38 -08:00 |
|
daan
|
5d2f111f64
|
make the stress test do more iterations under a smaller load to stay under 1GiB committed and increase thread interaction
|
2020-01-08 16:33:45 -08:00 |
|
daan
|
50b3f6d7ae
|
fix assertion
|
2020-01-08 16:33:45 -08:00 |
|
daan
|
d4ab0ff08c
|
fix timeout on huge page reservation if set to 0
|
2020-01-07 14:15:37 -08:00 |
|
daan
|
4223caac0f
|
on Linux dynamically detect if getrandom is supported and fall back to /dev/urandom if needed
|
2020-01-06 22:08:21 -08:00 |
|
Kirsten Lee
|
0a2520490b
|
only include vector header when compiling c++
|
2020-01-06 16:44:55 -08:00 |
|
Kirsten Lee
|
d97c56d4c1
|
fix unintended diff
|
2020-01-06 16:25:21 -08:00 |
|
Kirsten Lee
|
743e891738
|
add stl mimalloc wrapper
|
2020-01-06 16:18:22 -08:00 |
|
daan
|
d8d69c2c94
|
disable MAP_NORESERVE on huge pages
|
2020-01-05 22:07:16 -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
|
d596f08569
|
fix thread_free read in assertion
|
2020-01-03 22:06:27 -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
|
f9ca88f71c
|
set secure default to 0 again
|
2020-01-02 17:57:41 -08:00 |
|
daan
|
9629a0190f
|
fix eager commit on large pages (issue #182)
|
2020-01-02 17:25:00 -08:00 |
|
daan
|
1b5a08cd25
|
remove unused parameter in check double free
|
2020-01-02 17:24:32 -08:00 |
|
daan
|
384808e340
|
Merge branch 'dev-random' into dev
|
2019-12-28 16:19:45 -08:00 |
|
daan
|
fc3e537bd4
|
improve double free detection with faster same page check
|
2019-12-28 15:28:13 -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
|
ce02986d56
|
variable renaming
|
2019-12-27 22:30:23 -08:00 |
|
daan
|
6f0b35d513
|
merge from master
|
2019-12-24 10:44:49 -08:00 |
|
Daan
|
49acc88924
|
Update readme.md
|
2019-12-24 10:38:13 -08:00 |
|
daan
|
e05a1edc03
|
fix large OS page size on Linux (issue #184, due to fix for #179)
v1.2.2
|
2019-12-24 10:32:44 -08:00 |
|
daan
|
ba87a39d9f
|
updated random cookie generation using OS primitives and chacha20
|
2019-12-22 19:37:49 -08:00 |
|
daan
|
f9b942d80d
|
fix compilation of region descriptor on 32-bit
|
2019-12-22 17:08:46 -08:00 |
|
Daan Leijen
|
e31e609414
|
add preload check in option initialization (issues #179)
v1.2.1
|
2019-12-01 01:03:39 -08:00 |
|
daan
|
36d168a2d9
|
add preload check to options initialization
|
2019-12-01 00:03:35 -08:00 |
|
daan
|
a407f35c64
|
add arena.c into the static override object
|
2019-12-01 00:01:14 -08:00 |
|
daan
|
a799a19136
|
fix non-standard line continuation
|
2019-11-25 14:30:12 -08:00 |
|
Daan
|
fe51d11e61
|
Merge pull request #178 from carenas/master
avoid deadlock with BSD systems that call malloc from the dynamic linker
|
2019-11-25 14:28:58 -08:00 |
|
daan
|
1d998af854
|
clean up options; make secure work with eager_page_commit
|
2019-11-25 10:47:17 -08:00 |
|
daan
|
1643273357
|
fix unix bug in decommit size
|
2019-11-25 10:11:29 -08:00 |
|
daan
|
c6df7a199c
|
experimental eager page commit option
|
2019-11-24 22:02:40 -08:00 |
|
daan
|
4452431b6c
|
reenable segment cache and fix initial segment commit
|
2019-11-24 15:25:19 -08:00 |
|
daan
|
727d33b96f
|
more precise memory reset
|
2019-11-24 14:40:47 -08:00 |
|
Carlo Marcelo Arenas Belón
|
41ef691292
|
avoid deadlock with BSD systems that call malloc from the dynamic linker
extend the exception used for macOS to cover also OpenBSD (tested in 6.4+)
and DragonFlyBSD (tested in 5.6.2)
|
2019-11-24 10:00:39 -08:00 |
|
daan
|
4a0d35afd0
|
improve secure guard page allocation to work with non-eager commit
|
2019-11-23 11:59:19 -08:00 |
|
Daan Leijen
|
0d3c195f37
|
update stress test with more documentation
|
2019-11-22 11:28:55 -08:00 |
|
daan
|
24b768363e
|
bump version to 1.3 for further development
|
2019-11-22 09:28:48 -08:00 |
|
daan
|
31fbe9793d
|
Merge branch 'dev-exp' into dev
|
2019-11-22 09:22:03 -08:00 |
|
daan
|
acb03c5497
|
update redirection module on Windows for improved trace messages
v1.2.0
|
2019-11-22 08:57:51 -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 |
|