]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
rust: helpers: Add i8/i16 atomic xchg_release helpers
authorFUJITA Tomonori <fujita.tomonori@gmail.com>
Tue, 23 Dec 2025 06:21:39 +0000 (15:21 +0900)
committerBoqun Feng <boqun.feng@gmail.com>
Fri, 9 Jan 2026 11:01:40 +0000 (19:01 +0800)
Add i8/i16 atomic xchg_release helpers that call xchg_release() macro
implementing atomic xchg_release using architecture-specific
instructions.

[boqun: Use xchg_release() instead of raw_xchg_release()]

Reviewed-by: Alice Ryhl <aliceryhl@google.com>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@gmail.com>
Reviewed-by: Gary Guo <gary@garyguo.net>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Link: https://patch.msgid.link/20251223062140.938325-4-fujita.tomonori@gmail.com
rust/helpers/atomic_ext.c

index 177bb3603e5f4eb29edb30fbeee97754575f00a7..2b976a7ad3d7de21258152ccbd3d2aaa485c7975 100644 (file)
@@ -70,3 +70,13 @@ __rust_helper s16 rust_helper_atomic_i16_xchg_acquire(s16 *ptr, s16 new)
 {
        return xchg_acquire(ptr, new);
 }
+
+__rust_helper s8 rust_helper_atomic_i8_xchg_release(s8 *ptr, s8 new)
+{
+       return xchg_release(ptr, new);
+}
+
+__rust_helper s16 rust_helper_atomic_i16_xchg_release(s16 *ptr, s16 new)
+{
+       return xchg_release(ptr, new);
+}