Commit Graph

2092 Commits

Author SHA1 Message Date
daanx
f9076a5cf8 use EFAULT if a target heap tag cannot be found on reclaim 2024-06-02 15:54:49 -07:00
daanx
f87ec74bb3 reduce delayed output from redirection to 16KiB to reduce the .bss size 2024-06-02 15:10:17 -07:00
daanx
e8f4bdd1ea fix cast; make segment map static 2024-06-02 14:59:37 -07:00
daanx
a964322a21 revise the segment map to only apply to OS allocated segments and reduce the .BSS footprint 2024-06-02 14:46:59 -07:00
daanx
5501f59f6c only reclaim for exclusive heaps in their associated arena 2024-06-02 13:16:20 -07:00
daanx
635d626c82 fix leak in abandoned block visiting 2024-06-02 10:43:41 -07:00
daanx
f7fe5bf20e optimize heap walks, by Sam Gross, upstream of python/cpython#114133 2024-06-02 10:28:30 -07:00
daanx
855e3b2549 add support to visit _all_ abandoned segment blocks per sub-process, upstream for python/cpython#114133 2024-06-02 09:41:12 -07:00
daanx
8f874555d5 add initial support for visiting abandoned segments per subprocess, upstream for python/cpython#114133 2024-06-02 07:47:08 -07:00
Daan Leijen
f93fb900b7 move lock code to atomic.h 2024-06-01 17:25:45 -07:00
Daan Leijen
0b3cd51249 add initial primitive api for locks 2024-06-01 16:45:20 -07:00
daanx
d9aa19a763 add support for sub-processes (to supportpython/cpython#113717) 2024-06-01 15:57:18 -07:00
daanx
f87a4c15b2 increase max arenas 2024-06-01 13:41:13 -07:00
daanx
aeee7907a0 fix spelling 2024-06-01 13:20:28 -07:00
daanx
616db104a9 prevent UB in arena reservation 2024-06-01 12:29:48 -07:00
Daan
87d088b7e0 bump version to v1.8.8 for further development 2024-05-21 12:31:57 -07:00
Daan
1f3ecec2e5 update readme 2024-05-21 12:25:13 -07:00
Daan
4aa97336f7 remove the need for cmake patch in vcpkg port 2024-05-21 12:06:52 -07:00
Daan
bd04cec1c4 roll back export ignore on the bin directory as it needed by vcpkg (et al) to build on Windows 2024-05-21 11:57:52 -07:00
Daan
836ee0a94c add alpine docker files 2024-05-19 21:32:22 -07:00
daanx
d5ac4f7b95 add example docker file for testing on manylinux-x64 2024-05-19 20:42:58 -07:00
daanx
b9b321d328 use _builtin_thread_pointer also on gcc 11-x64 and clang-14-x64 2024-05-19 20:42:28 -07:00
Daan
d6ad058e44
Merge pull request #897 from madsmtm/patch-1
macOS: Fix linking statically
2024-05-19 15:49:50 -07:00
Daan
9cd7e4cc68 rename library check to find_link_library 2024-05-19 15:43:15 -07:00
Daan
f739e4f2c3 check all link libraries (pthread, rt, and atomic) via check_linker_flag first before using find_library (see also issue #898 2024-05-19 15:38:26 -07:00
Daan
03224e17a0 bump cmake required version to 3.18 and detect libatomic more reliably, see pr #898 2024-05-19 13:25:31 -07:00
Daan
7ea7296d3e add malloc_good_size override maacro, see issue #900 and pr #901 2024-05-19 12:03:55 -07:00
Daan
0c4041fa53 add support for custom heap and page tags, upstream of python/cpython#113742 2024-05-19 08:06:32 -07:00
Daan
710d6138c7 refactor thread meta-data initilazation, upstream of python/cpython#113263 2024-05-18 17:42:47 -07:00
Daan
66052f135f allow custom thread id, upstream of python/cpython#115488) 2024-05-18 17:05:13 -07:00
daanx
381da05d8a make mimalloc includes relative to the current file, upstream of python/cpython#113141 2024-05-18 16:48:58 -07:00
daanx
92a8268fa4 make warning an trace message if we cannot allocate at a hinted address, upstream of python/cpython#113372 2024-05-18 16:45:23 -07:00
daanx
c48a21215b fix arm64 windows compilation, upstream of python/cpython#111527 2024-05-18 16:41:39 -07:00
daanx
999b31fea6 allow syscall include on FreeBSD as well 2024-05-18 16:39:04 -07:00
daanx
87c4012f13 make syscall test in primitives positive and avoid unused function warnings. upstream python/cpython#111907, python/cpython#111593, python/cpython#117548 2024-05-18 16:37:40 -07:00
daanx
937fd19338 comment 2024-05-18 16:32:10 -07:00
daanx
d9441ffce2 fix compilation on AIX, upstream of python/cpython#111593 2024-05-18 16:16:36 -07:00
daanx
1b21415dfa make retry on oom an option; revise size options to not overflow the long 2024-05-18 09:56:02 -07:00
daanx
e58fa376d4 on windows, retry virtual alloc if out-of-memory, see issue #894 2024-05-17 13:19:37 -07:00
Daan
a05e1f4868 comment to not add custom fields (issue #896) 2024-05-17 09:12:03 -07:00
Daan
8fd1184272 fix alignment issue on Alpine 32-bit musl compilation (issue #895) 2024-05-17 09:06:27 -07:00
Daan
97013ee2b4 improve static allocation 2024-05-16 19:16:44 -07:00
Daan
aa91fe0f1c fix build warning on 32-bit musl 2024-05-16 19:05:24 -07:00
Daan
e3fea8f4e1 temporary fix for musl libc 32-bit compilation on alpine (see issue #895) 2024-05-16 18:58:18 -07:00
Daan
e7f2ffe26c fix build warning on alpine 32-bit 2024-05-16 18:53:50 -07:00
Daan
5eb29e971b bump version to 1.8.7 for further development 2024-05-16 18:52:29 -07:00
Daan
6e960f06e7 add note on using linker section instead of fiber api 2024-05-16 15:13:03 -07:00
Daan
a38c8dd0f9 rename must_free_whole -> has_partial_free 2024-05-16 14:41:10 -07:00
Mads Marquart
fefdce3ee4
macOS: Fix linking statically
`__attribute__((constructor))` does not mark the symbol as used, so the linker ends up dead-stripping the symbol when linked statically.

Adding the `used` attribute fixes that.
2024-05-15 21:12:54 +02:00
Daan
81a771161e update readme for updated release 2024-05-13 10:16:55 -07:00