diff options
author | Boqun Feng <boqun.feng@gmail.com> | 2025-09-04 21:41:36 -0700 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2025-09-15 09:38:34 +0200 |
commit | d9ea5a41cef80dc8103f4114b072b27364f2e06a (patch) | |
tree | c00263765c7e37f63fd2a2015ac843fbac3ad5c3 /rust/helpers/refcount.c | |
parent | 84c6d36bcaf98a8c0533cd334a624d536d20879b (diff) |
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 <boqun.feng@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Reviewed-by: Elle Rhumsaa <elle@weathered-steel.dev>
Link: https://lore.kernel.org/all/20250719030827.61357-10-boqun.feng@gmail.com/
Diffstat (limited to 'rust/helpers/refcount.c')
0 files changed, 0 insertions, 0 deletions