Tag
memory-barriers
- Nov 20, 2025 Release, Acquire, and the Synchronizes-With Edge What an acquire load is forbidden to move above, what a release store is forbidden to move below, and why the edge is directional rather than a barrier. memory systems
- Oct 21, 2025 Acquire and Release Ordering: What a Lock Actually Guarantees About Memory How store buffers and compiler reordering let a consumer observe a published value before the data it points to, and how release and acquire operations restore the ordering without a full fence. operating systems
- Sep 15, 2025 What a Fence Instruction Actually Does to the Pipeline The three mechanisms behind fence cost — buffer drain, request acknowledgement, and memory-operation serialisation — and why a fence is never a cache flush. computer architecture
- May 27, 2025 Dependencies, RCsc, and RCpc Acquire on ARMv8 How address and data dependencies order accesses without a barrier, and why ARMv8.3 added a second, cheaper form of acquire load alongside the original one. memory systems
- Apr 10, 2025 The Linux Kernel Memory Model and Its Tooling How LKMM formalises READ_ONCE, smp_mb, and RCU into an executable model, what its relation set adds to the architecture models, and where it deliberately diverges from C11. memory systems
- Jun 28, 2024 Store Buffers and the x86-TSO Model How a per-core write buffer leaves store-load as the only program-order pair that may invert, why forbidding it would defeat the buffer, and what a locked instruction orders. memory systems
- Jun 27, 2024 io_uring: Shared Rings, Submission Entries, and Completion Ordering How a submission queue and a completion queue are mapped into the process, what the two barriers protect, and why a batched interface changes the cost of a system call. systems programming
- Apr 26, 2024 Acquire and Release: What Each Ordering Forbids The precise prohibitions that acquire and release each impose, why the pair cannot order a store against a later load, and when a standalone fence is the only option. systems programming
- Apr 9, 2022 The Virtio Split Ring: Descriptor Tables, Available Rings, and the Notification Suppression How a guest and a hypervisor exchange buffers without a trap per request, what the three-ring layout enforces, and why the notification flags matter more than the data path. virtualization