From fbcffe9d5de64c792add092be2af317345a151f6 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 19 Dec 2020 16:12:33 -0700 Subject: [PATCH] std.Progress: fix atomic ordering semantics thx king protty --- lib/std/Progress.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/std/Progress.zig b/lib/std/Progress.zig index cd5d5ea79b..ae9b1783be 100644 --- a/lib/std/Progress.zig +++ b/lib/std/Progress.zig @@ -111,7 +111,7 @@ pub const Node = struct { /// Tell the parent node that this node is actively being worked on. Thread-safe. pub fn activate(self: *Node) void { if (self.parent) |parent| { - @atomicStore(?*Node, &parent.recently_updated_child, self, .Monotonic); + @atomicStore(?*Node, &parent.recently_updated_child, self, .Release); } } @@ -251,7 +251,7 @@ fn refreshWithHeldLock(self: *Progress) void { need_ellipse = false; } } - maybe_node = @atomicLoad(?*Node, &node.recently_updated_child, .Monotonic); + maybe_node = @atomicLoad(?*Node, &node.recently_updated_child, .Acquire); } if (need_ellipse) { self.bufWrite(&end, "... ", .{});