This is a re-submission of Alice's patch[0]. The leading commits are
intended to improve the consistency and ergonomics of `ForeignOwnable`,
and to split out the code movement originally included in the patch.
`ForeignOwnable::borrow_mut` is a dependency of the memory backing
feature of `rnull`, the Rust null block driver.
Link: https://lore.kernel.org/all/20230710074642.683831-1-aliceryhl@google.com/T/#u [0]
Signed-off-by: Tamir Duberstein <tamird@gmail.com>
---
Changes in v3:
- Remove superfluous `cast_const()`. (Alice Ryhl)
- Correct SoB placement. (Alice Ryhl)
- Mention `as` cast removal. (Miguel Ojeda)
- Link to v2: https://lore.kernel.org/r/20241104-borrow-mut-v2-0-de650678648d@gmail.com
Changes in v2:
- Call out ordering inconsistency in commit message.
- Restore pointer type ascriptionin Arc. (Andreas Hindborg)
- Remove most reduction of unsafe blocks. (Andreas Hindborg)
- Lift splitting of unsafe block into separate patch.
- Link to v1: https://lore.kernel.org/r/20241030-borrow-mut-v1-0-8f0ceaf78eaf@gmail.com
---
Alice Ryhl (1):
rust: add improved version of `ForeignOwnable::borrow_mut`
Tamir Duberstein (5):
rust: arc: use `NonNull::new_unchecked`
rust: types: avoid `as` casts
rust: arc: split unsafe block, add missing comment
rust: change `ForeignOwnable` pointer to mut
rust: reorder `ForeignOwnable` items
rust/kernel/alloc/kbox.rs | 41 ++++++++++++++++-----
rust/kernel/sync/arc.rs | 42 ++++++++++++++-------
rust/kernel/types.rs | 93 +++++++++++++++++++++++++++++++++++------------
3 files changed, 129 insertions(+), 47 deletions(-)
---
base-commit: ae7851c29747fa3765ecb722fe722117a346f988
change-id: 20241030-borrow-mut-75f181feef4c
Best regards,
--
Tamir Duberstein <tamird@gmail.com>