Commit graph

2064 commits

Author SHA1 Message Date
Daan Leijen
0022802177 commend and make at least 8 tries for reclaim 2024-03-25 15:25:04 -07:00
Daan Leijen
cc8d89a085 update comments 2024-03-25 07:35:49 -07:00
Daan Leijen
7c17c3d33e optimize page struct layout 2024-03-24 22:41:33 -07:00
Daan Leijen
af3f2f9168 fix assertions and warnings on gcc 2024-03-24 22:32:32 -07:00
Daan Leijen
3c85983a35 merge from dev with new page fields (block_size and is_huge) 2024-03-24 22:12:33 -07:00
daanx
006ae2d055 add is_huge page flag to ensure the right page queue is returned (see #868) 2024-03-24 17:07:28 -07:00
Daan Leijen
9c96d05ee4 abandoned reclaim on free is on by default 2024-03-24 14:52:50 -07:00
Daan Leijen
a8a53e3e85 fix double counting of free-ing for non-thread-local free calls 2024-03-24 14:50:15 -07:00
Daan Leijen
b5665f0eec add full block_size and page_start to page info 2024-03-24 14:17:17 -07:00
Daan Leijen
6688b45fbd rename MI_ALIGNMENT_MAX to MI_BLOCK_ALIGNMENT_MAX for clarity 2024-03-24 10:57:02 -07:00
Daan Leijen
f141ca12a4 add extra runtime check to ensure we never insert large or huge pages in the segment free queue (issue #870) 2024-03-24 10:53:39 -07:00
Daan Leijen
e363f477a7 Merge branch 'dev' into dev-slice 2024-03-24 10:39:39 -07:00
Daan Leijen
07ae64bd81 faster check for NULL in mi_free by combining with masking 2024-03-24 10:39:22 -07:00
Daan Leijen
6399dbdc30 merge from dev (new free.c) 2024-03-24 09:56:26 -07:00
Daan Leijen
86475a7b9b use MI_MAX_ALIGN_SIZE to adjust block_offset_adj 2024-03-24 09:03:01 -07:00
Daan Leijen
ea6137a501 use MI_MAX_ALIGN_SIZE to adjust block_offset_adj 2024-03-24 09:01:58 -07:00
Daan Leijen
4f809aadb7 use free field for expiration instead of used 2024-03-24 08:29:56 -07:00
Daan Leijen
60c4a0fe56 fix compilation warnings for new uint16_t size for used field 2024-03-24 08:10:35 -07:00
Daan
34d37fa204 nicer organisation of free.c 2024-03-18 03:47:54 -07:00
Daan
d08b4219e9 improve used decrement code gen 2024-03-18 03:32:06 -07:00
Daan
cc809b0cd4 take 16 bits from used field to create a fast unalign path 2024-03-18 01:40:03 -07:00
Daan
355f44f373 split free routines in a separate file 2024-03-17 08:44:11 -07:00
Daan
18ebeb8a83 fix (benign) race condition on the page flags has_aligned flag and refactor free-ing code (issue 865) 2024-03-17 08:33:09 -07:00
Joshua Root
f508ae5528
Only interpose strndup if it exists
Added in the macOS 10.7 SDK.
2024-03-05 01:28:10 +11: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
2cca58dfc8 Merge branch 'dev' into dev-slice 2024-03-03 18:08:27 -08:00
Daan
da52048025 rename local to avoid warning in static build 2024-03-03 18:08:17 -08:00
daanx
abb8eab9b2 merge from dev 2024-03-03 17:43:52 -08:00
daanx
5fe83bf327 limit reclaim from free to half the segments to prevent a pure freeing thread to reclaim too many segments 2024-03-03 17:38:50 -08:00
Daan
bcb8ce94f1 merge from dev-abandon 2024-03-03 14:17:07 -08:00
Daan
40517890d4 Merge branch 'dev' into dev-abandon 2024-03-03 14:15:21 -08:00
Daan
719496bac9 fix clang warning 2024-03-03 13:22:24 -08:00
Daan
fa10914f73 track os stats in the main stats directly 2024-03-03 13:19:27 -08: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
56d1a859ca Merge branch 'dev' into dev-abandon 2024-03-03 09:37:53 -08:00
Daan
027b22aaf2 add arena stats 2024-03-03 09:37:46 -08:00
Daan
61cc89a98d Merge branch 'dev-slice' into dev-slice-abandon 2024-03-03 08:46:58 -08:00
Daan
0a5cf933fc Merge branch 'dev' into dev-slice 2024-03-03 08:46:40 -08:00
Daan
d86c105409 Merge branch 'dev' into dev-abandon 2024-03-03 08:44:15 -08:00
Daan
cca3fc26b0 fix macOS version checks, issues #829 2024-03-03 08:41:25 -08:00
daanx
5a2ed6d977 fix assertion 2024-03-02 18:27:06 -08:00
daanx
8e1f8f4d5c Merge branch 'dev-abandon' into dev-slice-abandon 2024-03-02 18:25:09 -08:00
daanx
43d40704b9 keep threadid 0 for abandoned_next to preserve invariants 2024-03-02 18:24:53 -08:00
daanx
656c81a096 Merge branch 'dev-abandon' into dev-slice-abandon 2024-03-02 17:36:26 -08:00
daanx
ccd2ac644d merge from dev-slice 2024-03-02 17:36:23 -08:00
daanx
70e3ce07d1 Merge branch 'dev' into dev-abandon 2024-03-02 17:34:58 -08:00
Daan
7ff4607f6c merge from dev 2024-03-02 17:26:38 -08:00
Daan
683332c950 Define reallocarr as weak to avoid symbol collision on gnu/Linux. #751 by @Romain-Geissler-1A 2024-03-02 17:12:58 -08:00
Daan
e1f6516fda Fix undefined symbol errors when building for wasi #758, by @anuraaga 2024-03-02 17:05:29 -08:00
Daan
16c3f1292c Fix compile error on OpenBSD #773, by @sundb 2024-03-02 16:57:10 -08:00