authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-03-21 14:04:24+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-03-21 14:04:24+01:00
logcb7d2b056318447e3fbb2e8c4163d03480688278
tree5ba0eb2ba37198ec269324df48318b09964b80d0
parent36c390bf1484a9a549759663a2bbb9bbe82f6706
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

Revert "std.Progress: use `cmpxchgStrong` instead of `cmpxchgWeak` for locking/unlocking IPC"

This reverts commit b6f99a59a3270baf6bfd8e3152e58f1c47455d08. https://codeberg.org/ziglang/zig/pulls/31608#issuecomment-11875362

1 files changed, 2 insertions(+), 2 deletions(-)

lib/std/Progress.zig+2-2
......@@ -450,7 +450,7 @@ pub const Node = struct {
450450 const ipc = @atomicLoad(Ipc, ipc_ptr, .monotonic);
451451 if (ipc.locked or ipc.valid) continue;
452452 const generation = ipc.generation +% 1;
453 if (@cmpxchgStrong(
453 if (@cmpxchgWeak(
454454 Ipc,
455455 ipc_ptr,
456456 ipc,
......@@ -1133,7 +1133,7 @@ fn serialize(io: Io, serialized_buffer: *Serialized.Buffer) !Serialized {
11331133 const ipc_data = &serialized_buffer.ipc_data[ipc_index.slot];
11341134 state: switch (ipc_data.state) {
11351135 .unused => {
1136 if (@cmpxchgStrong(
1136 if (@cmpxchgWeak(
11371137 Ipc,
11381138 ipc,
11391139 .{ .locked = false, .valid = true, .generation = ipc_index.generation },