From: Benno Lossin <lossin@kernel.org>
To: Danilo Krummrich <dakr@kernel.org>
Cc: "Benno Lossin" <lossin@kernel.org>,
"Miguel Ojeda" <ojeda@kernel.org>,
"Alex Gaynor" <alex.gaynor@gmail.com>,
"Boqun Feng" <boqun.feng@gmail.com>,
"Gary Guo" <gary@garyguo.net>,
"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
"Andreas Hindborg" <a.hindborg@kernel.org>,
"Alice Ryhl" <aliceryhl@google.com>,
"Trevor Gross" <tmgross@umich.edu>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Rafael J. Wysocki" <rafael@kernel.org>,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
"Tejun Heo" <tj@kernel.org>,
"Tamir Duberstein" <tamird@gmail.com>,
"Dirk Behme" <dirk.behme@gmail.com>,
"Viresh Kumar" <viresh.kumar@linaro.org>,
"Fiona Behrens" <me@kloenk.dev>,
"Christian Schrefl" <chrisi.schrefl@gmail.com>,
"Alban Kurti" <kurti@invicto.ai>,
rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org
Subject: [GIT PULL] Rust pin-init for v6.18
Date: Fri, 12 Sep 2025 19:41:46 +0200 [thread overview]
Message-ID: <20250912174148.373530-1-lossin@kernel.org> (raw)
Hi Danilo,
As discussed with Miguel, I'm sending my PR to you this time.
The code changes themselves aren't that big, but functionality-wise
there are three important ones: pin-projections, code blocks and access
to previously initialized fields. More syntax changes will be on the way
for v6.19 and I hope I'll be a bit earlier in that cycle :)
The commits have been in linux-next for one day.
I have a conflict with your devres fix that's in -rc3, the resolution in
linux-next looks good.
Please pull for v6.18 -- thanks!
---
Cheers,
Benno
The following changes since commit 8f5ae30d69d7543eee0d70083daf4de8fe15d585:
Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)
are available in the Git repository at:
https://github.com/Rust-for-Linux/linux.git tags/pin-init-v6.18
for you to fetch changes up to 42415d163e5df6db799c7de6262d707e402c2c7e:
rust: pin-init: add references to previously initialized fields (2025-09-11 23:30:02 +0200)
----------------------------------------------------------------
pin-init changes for v6.18
Changed:
- `#[pin_data]` now generates a `*Projection` struct similar to the
`pin-project` crate.
- Add initializer code blocks to `[try_][pin_]init!` macros: make
initializer macros accept any number of `_: {/* arbitrary code */},` &
make them run the code at that point.
- Make the `[try_][pin_]init!` macros expose initialized fields via a
`let` binding as `&mut T` or `Pin<&mut T>` for later fields.
Upstream dev news:
- Released v0.0.10 before the changes included in this tag.
- Inform users of the impending rename from `pinned-init` to `pin-init`
(in the kernel the rename already happened).
- More CI improvements.
----------------------------------------------------------------
Benno Lossin (6):
rust: pin-init: examples: error: use `Error` in `fn main()`
rust: pin-init: README: add information banner on the rename to `pin-init`
rust: pin-init: rename `project` -> `project_this` in doctest
rust: pin-init: add pin projections to `#[pin_data]`
rust: pin-init: add code blocks to `[try_][pin_]init!` macros
rust: pin-init: add references to previously initialized fields
rust/kernel/devres.rs | 6 +-
rust/kernel/workqueue.rs | 9 +-
rust/pin-init/README.md | 12 ++
rust/pin-init/examples/error.rs | 4 +-
rust/pin-init/src/lib.rs | 4 +-
rust/pin-init/src/macros.rs | 239 ++++++++++++++++++++++++++++++++++------
samples/rust/rust_driver_pci.rs | 2 +-
7 files changed, 227 insertions(+), 49 deletions(-)
next reply other threads:[~2025-09-12 17:42 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-12 17:41 Benno Lossin [this message]
2025-09-12 18:55 ` [GIT PULL] Rust pin-init for v6.18 Danilo Krummrich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250912174148.373530-1-lossin@kernel.org \
--to=lossin@kernel.org \
--cc=a.hindborg@kernel.org \
--cc=alex.gaynor@gmail.com \
--cc=aliceryhl@google.com \
--cc=bhelgaas@google.com \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun.feng@gmail.com \
--cc=chrisi.schrefl@gmail.com \
--cc=dakr@kernel.org \
--cc=dirk.behme@gmail.com \
--cc=gary@garyguo.net \
--cc=gregkh@linuxfoundation.org \
--cc=kurti@invicto.ai \
--cc=kwilczynski@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=me@kloenk.dev \
--cc=ojeda@kernel.org \
--cc=rafael@kernel.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=tamird@gmail.com \
--cc=tj@kernel.org \
--cc=tmgross@umich.edu \
--cc=viresh.kumar@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.