Files
linux/rust/kernel
Alice Ryhl 09248ed8cd rust: sync: Implement Unpin for ARef
The default implementation of Unpin for ARef<T> is conditional on T
being Unpin due to its PhantomData<T> field. However, this is overly
strict as pointers to T are legal to move even if T itself cannot move.

Since commit 66f1ea83d9 ("rust: lock: Add a Pin<&mut T> accessor")
this causes build failures when combined with a Mutex that contains an
field ARef<T>, because almost any type that ARef is used with is !Unpin.

Reviewed-by: Daniel Almeida <daniel.almeida@collabora.com>
Signed-off-by: Alice Ryhl <aliceryhl@google.com>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Benno Lossin <lossin@kernel.org>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
Link: https://patch.msgid.link/20251218-unpin-for-aref-v2-1-30d77129cbc6@google.com
2026-01-09 19:01:40 +08:00
..
2025-10-20 04:04:23 +02:00
2025-11-05 00:05:38 +01:00
2025-11-13 20:17:24 +11:00
2025-11-29 10:41:09 -08:00
2026-01-09 19:01:40 +08:00
2025-11-04 13:25:29 +01:00
2025-07-23 02:05:58 +02:00
2025-07-23 02:05:58 +02:00
2025-10-22 07:15:19 +02:00
2025-08-13 17:40:28 +02:00
2025-09-06 13:27:20 +02:00
2025-11-24 09:14:47 +13:00
2025-11-13 20:17:24 +11:00
2025-07-21 01:16:35 +02:00
2025-08-21 16:58:07 +02:00
2025-11-13 10:21:01 +01:00
2025-11-16 21:56:57 +01:00
2024-11-04 16:21:44 -05:00