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 {...@@ -450,7 +450,7 @@ pub const Node = struct {
450 const ipc = @atomicLoad(Ipc, ipc_ptr, .monotonic);450 const ipc = @atomicLoad(Ipc, ipc_ptr, .monotonic);
451 if (ipc.locked or ipc.valid) continue;451 if (ipc.locked or ipc.valid) continue;
452 const generation = ipc.generation +% 1;452 const generation = ipc.generation +% 1;
453 if (@cmpxchgStrong(453 if (@cmpxchgWeak(
454 Ipc,454 Ipc,
455 ipc_ptr,455 ipc_ptr,
456 ipc,456 ipc,
...@@ -1133,7 +1133,7 @@ fn serialize(io: Io, serialized_buffer: *Serialized.Buffer) !Serialized {...@@ -1133,7 +1133,7 @@ fn serialize(io: Io, serialized_buffer: *Serialized.Buffer) !Serialized {
1133 const ipc_data = &serialized_buffer.ipc_data[ipc_index.slot];1133 const ipc_data = &serialized_buffer.ipc_data[ipc_index.slot];
1134 state: switch (ipc_data.state) {1134 state: switch (ipc_data.state) {
1135 .unused => {1135 .unused => {
1136 if (@cmpxchgStrong(1136 if (@cmpxchgWeak(
1137 Ipc,1137 Ipc,
1138 ipc,1138 ipc,
1139 .{ .locked = false, .valid = true, .generation = ipc_index.generation },1139 .{ .locked = false, .valid = true, .generation = ipc_index.generation },