all: make memory model saner

This commit is contained in:
Loïc Grégoire
2026-08-01 11:03:29 -04:00
parent b9819487fa
commit 9394197e32
6 changed files with 42 additions and 52 deletions
+2 -1
View File
@@ -264,7 +264,8 @@ pub const QSpinLock = LockTemplate(struct {
}
// Store cpu + 1 so that we can distinguish from an empty tail field.
rtl.barrier.wmb();
rtl.barrier.fence(.release);
const tail: u16 = @bitCast(Tail{ .cpu = @intCast(ke.cpu.current() + 1), .idx = @intCast(idx) });
const old: Tail = @bitCast(self.data.split.tail.swap(tail, .acq_rel));