Commit Graph

28 Commits

Author SHA1 Message Date
gingerBill
9b8223dd69 Remove use of .no_copy 2025-07-30 23:19:14 +01:00
gingerBill
6a10cfdc30 Fix typo 2025-07-30 23:15:14 +01:00
gingerBill
aa6a749804 Improve atomic logic for sync.Wait_Group 2025-07-30 23:11:18 +01:00
fusion32
bd4afafc66 make once_do_without_data_contextless actually contextless 2025-04-16 12:44:00 -03:00
Feoramund
16cd16b91e Fix comments 2024-09-11 08:39:23 -04:00
Feoramund
b1db33b519 Add cpu_relax to sync.auto_reset_event_signal 2024-09-11 08:39:23 -04:00
Feoramund
a1435a6a90 Fix deadlock in Auto_Reset_Event 2024-09-11 08:39:23 -04:00
Feoramund
fec1ccd7a3 Fix data races in sync.Recursive_Benaphore 2024-09-11 08:39:23 -04:00
Feoramund
b2c2235e58 Fix recursive_benaphore_try_lock
Previously, if the owner called this, it would fail.
2024-09-10 14:52:20 -04:00
Feoramund
0a594147af Use contextless procs in core:sync instead 2024-09-10 14:52:20 -04:00
Feoramund
dbb783fbf2 Fix atomic memory order for sync.ticket_mutex_unlock 2024-09-09 16:19:15 -04:00
Feoramund
9d6f71fd2e Fix sync.Benaphore
The calls to `atomic_add*` return the value before adding, not after, so
the previous code was causing the occasional data race.
2024-09-09 16:19:14 -04:00
flysand7
3aac4b1a3e [sync]: Document all procedures 2024-07-30 19:13:35 +11:00
Laytan Laats
8506e64345 sync: fix deadlock in one shot event 2024-05-02 20:49:29 +02:00
gingerBill
f989f4df3e Add sync.One_Shot_Event 2024-02-21 13:08:12 +00:00
gingerBill
e79883e4fd Add #no_copy to sync primitives 2023-04-15 15:41:30 +01:00
gingerBill
f438153b81 Change to use ODIN_VALGRIND_SUPPORT 2023-01-23 09:29:39 +00:00
gingerBill
117c0cceb1 Add helgrind markers to package sync 2023-01-23 09:24:21 +00:00
gingerBill
f8452bf1fc Add different variants for once_do 2022-12-08 15:58:39 +00:00
gingerBill
20943a81c1 Make sync calls contextless where possible 2022-12-08 15:55:53 +00:00
gingerBill
78a8da5fea Add sync.Parker 2022-04-30 12:37:39 +01:00
gingerBill
d5886c1572 Remove the wait group based semaphore implementation
It was a misuse of the data structure
2022-04-30 12:37:14 +01:00
gingerBill
c78b83f142 Fix _Sema 2022-04-01 14:51:51 +01:00
gingerBill
9f2d710c35 Change intrinsics.Atomic_Memory_Order fields to use Ada_Case rather than snake_case 2022-03-31 12:57:24 +01:00
gingerBill
06e8476efc Correct ordering in auto_reset_event_signal 2022-03-31 10:55:18 +01:00
gingerBill
b2f5b73532 Rename package name to sync 2022-03-31 01:05:50 +01:00
gingerBill
ba1930eb01 Update core to use new atomic intrinsics 2022-03-31 00:22:54 +01:00
gingerBill
4eb4ae6305 Replace sync with sync2 2022-03-30 17:42:44 +01:00