Commit Graph
1 Commits
Author SHA1 Message Date
Boqun Feng d9ea5a41ce rust: sync: Add memory barriers
Memory barriers are building blocks for concurrent code, hence provide
a minimal set of them.

The compiler barrier, barrier(), is implemented in inline asm instead of
using core::sync::atomic::compiler_fence() because memory models are
different: kernel's atomics are implemented in inline asm therefore the
compiler barrier should be implemented in inline asm as well. Also it's
currently only public to the kernel crate until there's a reasonable
driver usage.

Signed-off-by: Boqun Feng <[email protected]>
Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
Reviewed-by: Alice Ryhl <[email protected]>
Reviewed-by: Elle Rhumsaa <[email protected]>
Link: https://lore.kernel.org/all/[email protected]/
2025-09-15 09:38:34 +02:00