rust/kernel/revocable.rs | 2 + rust/kernel/types.rs | 45 ++++++++------- rust/kernel/types/unsafe_pinned.rs | 111 +++++++++++++++++++++++++++++++++++++ 3 files changed, 138 insertions(+), 20 deletions(-)
This version now only has the kernel implementation without the
config flag for using the upstream version. Additionally now
commits for using `UnsafePinned` in `Opaque` were added.
Checkpatch warns about `rust/kernel/types/unsafe_pinned.rs`
missing a MAINTAINERS entry. This should be fine because it
will be included in the RUST entry.
This patchset is based on the pin-init-next branch.
Signed-off-by: Christian Schrefl <chrisi.schrefl@gmail.com>
---
Changes in v4:
- Reworked `UnsafePinned::add` doctest to not use get_mut_unchecked.
- Link to v3: https://lore.kernel.org/r/20250510-rust_unsafe_pinned-v3-0-57ce151123f9@gmail.com
Changes in v3:
- Dropped CONFIG_RUSTC_HAS_UNSAFE_PINNED and feature(unsafe_pinned) (Alice)
- Add comment to `Opaque` reasoning about included `UnsafeCell` (Benno)
- Small changes in commit message of Patch 3 (Benno)
- Removed docs mentioning not included functions (Benno)
- Removed docs mentioning implementation details and added that as
comment instead (Benno)
- Link to v2: https://lore.kernel.org/r/20250430-rust_unsafe_pinned-v2-0-fc8617a74024@gmail.com
Changes in v2:
- Expanded `UnsafePinned` documentation to describe differences
with upstream rust implementation.
- Removed config flag for using upstream `UnsafePinned` type.
- Add patch implementing `Wrapper` for `Opaque`
- Add patch for using `UnsafePinned` internally in `Opaque`
- Link to v1: https://lore.kernel.org/r/20250418-rust_unsafe_pinned-v1-1-c4c7558399f8@gmail.com
---
Christian Schrefl (3):
rust: add UnsafePinned type
rust: implement `Wrapper<T>` for `Opaque<T>`
rust: use `UnsafePinned` in the implementation of `Opaque`
rust/kernel/revocable.rs | 2 +
rust/kernel/types.rs | 45 ++++++++-------
rust/kernel/types/unsafe_pinned.rs | 111 +++++++++++++++++++++++++++++++++++++
3 files changed, 138 insertions(+), 20 deletions(-)
---
base-commit: 9de1a293c8ece00d226b21a35751ec178be2a9fa
change-id: 20250418-rust_unsafe_pinned-891dce27418d
Best regards,
--
Christian Schrefl <chrisi.schrefl@gmail.com>
On Sun, May 11, 2025 at 08:21:37PM +0200, Christian Schrefl wrote: > This version now only has the kernel implementation without the > config flag for using the upstream version. Additionally now > commits for using `UnsafePinned` in `Opaque` were added. > > Checkpatch warns about `rust/kernel/types/unsafe_pinned.rs` > missing a MAINTAINERS entry. This should be fine because it > will be included in the RUST entry. > > This patchset is based on the pin-init-next branch. > > Signed-off-by: Christian Schrefl <chrisi.schrefl@gmail.com> Reviewed-by: Boqun Feng <boqun.feng@gmail.com> Thanks a lot for doing this! Regards, Boqun > --- > Changes in v4: > - Reworked `UnsafePinned::add` doctest to not use get_mut_unchecked. > - Link to v3: https://lore.kernel.org/r/20250510-rust_unsafe_pinned-v3-0-57ce151123f9@gmail.com > > Changes in v3: > - Dropped CONFIG_RUSTC_HAS_UNSAFE_PINNED and feature(unsafe_pinned) (Alice) > - Add comment to `Opaque` reasoning about included `UnsafeCell` (Benno) > - Small changes in commit message of Patch 3 (Benno) > - Removed docs mentioning not included functions (Benno) > - Removed docs mentioning implementation details and added that as > comment instead (Benno) > - Link to v2: https://lore.kernel.org/r/20250430-rust_unsafe_pinned-v2-0-fc8617a74024@gmail.com > > Changes in v2: > - Expanded `UnsafePinned` documentation to describe differences > with upstream rust implementation. > - Removed config flag for using upstream `UnsafePinned` type. > - Add patch implementing `Wrapper` for `Opaque` > - Add patch for using `UnsafePinned` internally in `Opaque` > - Link to v1: https://lore.kernel.org/r/20250418-rust_unsafe_pinned-v1-1-c4c7558399f8@gmail.com > > --- > Christian Schrefl (3): > rust: add UnsafePinned type > rust: implement `Wrapper<T>` for `Opaque<T>` > rust: use `UnsafePinned` in the implementation of `Opaque` > > rust/kernel/revocable.rs | 2 + > rust/kernel/types.rs | 45 ++++++++------- > rust/kernel/types/unsafe_pinned.rs | 111 +++++++++++++++++++++++++++++++++++++ > 3 files changed, 138 insertions(+), 20 deletions(-) > --- > base-commit: 9de1a293c8ece00d226b21a35751ec178be2a9fa > change-id: 20250418-rust_unsafe_pinned-891dce27418d > > Best regards, > -- > Christian Schrefl <chrisi.schrefl@gmail.com> >
© 2016 - 2025 Red Hat, Inc.