[PATCH v2 0/2] Arc methods for linked list

From: Alice Ryhl
Date: Wed Feb 28 2024 - 08:00:55 EST


This patchset contains two useful methods for the Arc type. They will be
used in my Rust linked list implementation, which Rust Binder uses. See
the Rust Binder RFC [1] for more information. Both these commits and
the linked list that uses them are present in the branch referenced by
the RFC.

I will send the linked list to the mailing list soon.

This patchset is based on rust-next and depends on [2].

Link: https://lore.kernel.org/rust-for-linux/20231101-rust-binder-v1-0-08ba9197f637@xxxxxxxxxx/ [1]
Link: https://lore.kernel.org/all/20240215104601.1267763-1-aliceryhl@xxxxxxxxxx/ [2]
Signed-off-by: Alice Ryhl <aliceryhl@xxxxxxxxxx>
---
Changes in v2:
- Move raw_to_inner_ptr to ArcInner and rename to container_of.
- Reword safety conditions for raw_to_inner_ptr to match its users.
- Link to v1: https://lore.kernel.org/r/20240219-arc-for-list-v1-0-d98cd92c760b@xxxxxxxxxx

---
Alice Ryhl (2):
rust: sync: add `ArcBorrow::from_raw`
rust: sync: add `Arc::into_unique_or_drop`

rust/kernel/sync/arc.rs | 107 ++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 89 insertions(+), 18 deletions(-)
---
base-commit: e944171070b65521c0513c01c56174ec8fd7d249
change-id: 20240209-arc-for-list-a2c126c2ad5c

Best regards,
--
Alice Ryhl <aliceryhl@xxxxxxxxxx>