Commit graph

90 commits

Author SHA1 Message Date
daanx
b27d154ffd add virtual address bits and physical memory to the mem config 2024-11-16 15:37:08 -08:00
Daan
f126b50382 update comments, set constructor priority to 101 on macOS 2024-10-27 21:10:46 -07:00
Daan
925efaeac9 improve windows static library initialization to account for thread local destructors (issue #944) 2024-10-23 01:10:00 -07:00
Daan
dfdb9cb877 cleanup process init/done 2024-10-22 06:52:34 -07:00
Daan
46e9e7fdd0 fix win32 compilation 2024-10-22 06:06:15 -07:00
Daan
e55ae0aeb7 fix duplicate definition on windows 2024-10-21 23:09:14 -07:00
Daan
f971bd6d74 fix build on windows 2024-10-21 23:05:51 -07:00
Daan
aa881733d7 reorganize primitives for process initialization; use special data segment on Windows for thread termination by default on Windows now (issue #869) 2024-10-21 22:56:59 -07:00
daanx
b5c6495f69 don't consider memory as large OS pages if only madvise'd 2024-08-20 15:58:36 -07:00
daanx
e4c8f42bb6 always include sys/prctl.h on linux to disable THP if large_os_pages are not enabled 2024-06-02 16:10: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
Daan
d6ad058e44
Merge pull request #897 from madsmtm/patch-1
macOS: Fix linking statically
2024-05-19 15:49:50 -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
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
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
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
13e519202a fix comments; nicer strdup/strndup 2024-05-13 09:02:40 -07:00
Daan
bb3802801c clarify parameters for emmalloc_memalign 2024-05-11 07:53:12 -07:00
Alon Zakai
0d22807e91 Emscripten: Remove no-longer-needed minimum emmalloc alignment 2024-05-07 13:22:13 -07:00
Daan
79ab7c63d7 disable transparent huge pages for a process too if the allow_large_os_pages option is set to false 2024-04-20 16:37:09 -07:00
Daan
8ada517cf6
Merge pull request #859 from jmroot/pressure_relief
Fix min macOS for pressure_relief
2024-04-19 10:17:08 -07:00
Daan
764aa44598 remove macOS preprocessor macros that do not exist (anymore). issue #879 2024-04-19 09:38:40 -07:00
Joshua Root
2e96bc9ee4
Fix min macOS for pressure_relief
This field exists in the 10.7 and later SDKs.
2024-03-05 01:12:06 +11:00
Daan
2473676e18 further fixes to macOS version checks by ensuring MAC_OS_X_VERSION_10_7 is always defined (issue #829) 2024-03-03 09:54:49 -08:00
Daan
cca3fc26b0 fix macOS version checks, issues #829 2024-03-03 08:41:25 -08:00
Daan
e1f6516fda Fix undefined symbol errors when building for wasi #758, by @anuraaga 2024-03-02 17:05:29 -08:00
Daan
128c7c1876 cleanup thp disable a bit 2024-03-02 16:55:13 -08:00
Daan
182583d3dd
Merge branch 'dev' into dev_thp_disable 2024-03-02 16:49:27 -08:00
Daan
3fe3d540b6 Fix incorrect MAP_HUGE_1GB check #793 2024-03-02 15:57:54 -08:00
Daan
7b398ad924 delete pthread key at shutdown, PR #810 by @jkriegshauser 2024-03-02 15:51:51 -08:00
Daan
b7d44378bb avoid unused function warning on Solaris, PR #830 by @kulikjak 2024-03-02 15:32:35 -08:00
Daan
98abfe042c avoid syscall on openBSD, issue #821 by @blackgnezdo 2024-03-02 15:08:22 -08:00
Daan
d21f60f712 add emscripten WASM support; this PR #822 written by Alon Zakai @kripken 2024-03-02 15:00:31 -08:00
Daan
bccf10e164 allow random fallback on older macOS versions, issue #829 2024-03-02 14:49:37 -08:00
Daan
89afa14045 fix build on illumos; by @dancrossnyc, issue #841 2024-03-02 14:25:16 -08:00
David Carlier
388d1aa9bd new Linux/Android option proposal.
Allowing to disable transparent huge pages on Linux/Android, so
we avoid affecting the whole system (such as /sys/kernel/mm/transparent_hugepage/enabled).
2023-07-14 21:55:30 +01:00
daanx
e10467f673 add libc primitives to reduce dependencies 2023-05-19 11:57:10 -07:00
daanx
0bb5cecbc2 use most performant reset on Linux (MADV_FREE) and Windows (MEM_RESET) as we use the precise decommit by default for purging anyways 2023-04-24 08:56:42 -07:00
daanx
88a8b13782 revise unix decommit 2023-04-23 20:53:27 -07:00
daanx
bfe2651ec9 revise decommit on linux in debug/secure mode 2023-04-23 20:32:22 -07:00
daanx
7f93bf02c9 be explicit about memory tracking in os.c 2023-04-23 16:40:01 -07:00
daanx
012f716485 add is_zero flag to prim_commit 2023-04-21 10:37:22 -07:00
daanx
3bc577004a clarify return codes of VirtualAlloc (issue #731) 2023-04-21 09:37:25 -07:00
daanx
4d976270eb review is_zero flag 2023-04-18 17:18:39 -07:00