diff --git a/core/container/pool/pool.odin b/core/container/pool/pool.odin index c686d9d6b..c3c7adc20 100644 --- a/core/container/pool/pool.odin +++ b/core/container/pool/pool.odin @@ -48,7 +48,7 @@ init :: proc(p: ^Pool($T), $link_field: string, block_size: uint = DEFAULT_BLOCK } destroy :: proc(p: ^Pool($T)) { - elem := sync.atomic_exchange_explicit(&p.free_list, nil, .Acquire) + elem := sync.atomic_exchange_explicit(&p.free_list, nil, .Relaxed) sync.atomic_store_explicit(&p.num_ready, 0, .Relaxed) diff --git a/core/nbio/mpsc.odin b/core/nbio/mpsc.odin index 7f88829b4..6604e4bd6 100644 --- a/core/nbio/mpsc.odin +++ b/core/nbio/mpsc.odin @@ -32,7 +32,7 @@ mpsc_enqueue :: proc(mpscq: ^Multi_Producer_Single_Consumer, obj: rawptr) -> boo return false } - head := sync.atomic_add_explicit(&mpscq.head, 1, .Acquire) + head := sync.atomic_add_explicit(&mpscq.head, 1, .Relaxed) assert(mpscq.buffer[head & mpscq.mask] == nil) rv := sync.atomic_exchange_explicit(&mpscq.buffer[head & mpscq.mask], obj, .Release) assert(rv == nil)