Commit graph

1035 commits

Author SHA1 Message Date
daan
e5b72cdfe7 reduce segment size and increase cache 2020-05-02 22:22:35 -07:00
daan
ea92fb2fe4 lower arena reset delay 2020-05-02 21:40:14 -07:00
Daan
a4b7baf6fd
Update readme with descriptions of secure and debug mode 2020-05-02 18:08:31 -07:00
daan
69158f2c76 roll back again to new arena cache: previous perf regression was caused due to accidentally making secure mode default 2020-05-02 12:04:36 -07:00
daan
18d697a1e6 roll back to old arena cache as it seems to do better on AMD 2020-05-02 11:57:33 -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
37b43e4cea improved arena cache 2020-05-02 10:37:33 -07:00
daan
1b158d8e80 set max retire size to MAX_MEDIUM_OBJ_SIZE 2020-05-02 10:37:07 -07:00
daan
84e1f7c92e merge from dev 2020-05-02 00:23:22 -07:00
daan
097c007ba3 reduce page retire cycles based on object size 2020-05-02 00:19:20 -07:00
daan
dd18852946 reduce page retire cycles 2020-05-02 00:13:40 -07:00
daan
01ad553978 set default reset delay to 250ms 2020-05-02 00:13:03 -07:00
daan
79da2728c4 reduce cache 2020-05-02 00:12:45 -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
81bd1b70b0
Merge pull request #238 from asl/gcc-6-aligned-dealloc
Fix override condition for sized dealloc with gcc 6
2020-05-01 14:16:20 -07:00
Daan
866fd0e8f5
Merge pull request #240 from andronat/master
Use position independent code (PIC) for static and object libraries.
2020-05-01 14:15:17 -07:00
Anastasios Andronidis
5c03e9dc79 Compile static and obj targets with PIC 2020-05-01 21:53:51 +01:00
daan
5cfdc39ff1 remove on-demand page commit option 2020-04-30 18:23:33 -07:00
daan
d8b0a9dc24 Merge branch 'master' into dev 2020-04-30 18:13:09 -07:00
daan
07a17dfeae fix initialization of union padding; issue found through valgrind by @jasongibson 2020-04-30 18:11:58 -07:00
daan
0af9dd6fd2 fix initialization of union padding; issue found through valgrind by @jasongibson 2020-04-30 17:40:00 -07:00
daan
dad3be3c64 update comments 2020-04-30 17:21:36 -07:00
daan
c609248f0e do delayed decommit if not reclaiming abandoned blocks 2020-04-30 13:30:19 -07:00
daan
0d25493c39 segment size to 16MiB to improve perf on mstress and rptest 2020-04-28 16:50:03 -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
9a33f23b5f fix MI_SHOW_ERRORS on msvc 2020-04-28 11:11:23 -07:00
daan
8f5710abcc Merge branch 'master' into dev 2020-04-28 11:07:55 -07:00
Daan
198ea4476c
Merge pull request #236 from nico-abram/patch-1
Fix typo in comment
2020-04-28 10:54:58 -07:00
Daan
e47bc01fa6
Merge pull request #233 from asl/xmalloc
Add xmalloc()-like functionality
2020-04-28 10:53:46 -07:00
Daan
07e80aebb7
Merge branch 'dev' into xmalloc 2020-04-28 10:53:34 -07:00
Daan
9ba16f2df9
Merge pull request #232 from asl/cmake-err-warn-default
Add cmake option to specify whether warnings / errors are enabled by default
2020-04-28 10:51:30 -07:00
Anton Korobeynikov
0b440d9543 Apparently gcc 6 defines __cpp_aligned_new in C++14 mode, however no std::align_val_t is available there
for obvious reasons
2020-04-28 19:09:54 +03:00
Anton Korobeynikov
079b886feb Add cmake option to specify whether warnings / errors are enabled by default.
Currently warnings / errors are enabled by default in debug build.
Otherwise they could be enabled only via environmental variable or
API option call. Add possibility to specify the default during the
build time. This simplifies e.g. integration of the library into
bigger projects as no source changes would be required.
2020-04-28 16:44:44 +03:00
Anton Korobeynikov
2f1fc1df5c Add xmalloc()-like functionality.
xmalloc is a non-standard extension forcing malloc() to
abort should the memory allocation failed instead of returning a
null pointer. Such functionality is quite useful as it provides one
single point of error handling if the caller of malloc() does not
check the result (as it often does!) and segfault is ocurring somewhere
else. If more fine-grained control is necessary one could register a custom
error handler, however, this might not be an option while interposing.
2020-04-28 16:38:47 +03:00
Nicolas
f40aaad876
Fix typo in comment
Usuelly->Usually
2020-04-24 23:20:28 -03:00
Daan Leijen
1f8cc50c6b disable artifact uploading for now as it exceeds the storage space 2020-04-24 07:48:22 -07:00
Daan Leijen
798cd6647d use line-buffered output for statistics (issue #235 2020-04-24 07:43:21 -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
7123efb397 pass full commit flag to free, possible fix for issue #218 2020-04-23 20:19:48 -07:00
daan
0d3c141243 add check for if commit fails in segment allocation 2020-04-23 17:28:44 -07:00
Daan
15bb20f9e6
Merge pull request #234 from asl/osx-zone
Provide several fixes around OS X zone overrides
2020-04-21 10:15:39 -07:00
Anton Korobeynikov
fe976caaea Provide zone_size function: free() uses it to find the zone pointer belongs to in order to call the corresponding zone_free function 2020-04-21 15:10:49 +03:00
Anton Korobeynikov
07d72f4fba Do not forget to include malloc zone implementation in the static object 2020-04-21 15:08:27 +03:00
Anton Korobeynikov
4a0c53ba5a Fix the prototype of malloc_size. Otherwise we'll end with invalid
redeclaration if malloc/malloc.h is pulled on Darwin
2020-04-21 15:07:32 +03:00
daan
e31298bdc3 fix compiler warning in secure mode 2020-04-20 18:04:09 -07:00
daan
3484cda169 bump version to 1.6.3 for further development 2020-04-20 18:01:39 -07:00