rust: sync: replace `kernel::c_str!` with C-Strings
Tamir Duberstein
reviewerPATCH 1/1 rust: sync: replace `kernel::c_str!` with C-Strings
C-String literals were added in Rust 1.77. Replace instances of kernel::c_str! with C-String literals where possible.
---
This is the same as my earlier change[0] but applies to additional code[1] which didn't make it to mainline in a timely manner and is now queued for v7.0.
--- rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
rust/kernel/sync.rs +1 -2
@@ -126,13 +126,12 @@ fn drop(self: Pin<&mut Self>) {/// # Examples /// /// ``` -/// use kernel::c_str; /// use kernel::sync::{static_lock_class, Arc, SpinLock}; /// /// fn new_locked_int() -> Result<Arc<SpinLock<u32>>> { /// Arc::pin_init(SpinLock::new( /// 42, -/// c_str!("new_locked_int"), +/// c"new_locked_int", /// static_lock_class!(), /// ), GFP_KERNEL) /// }
---
base-commit: d08c85ac8894995d4b0d8fb48d2f6a3e53cd79ab
change-id: 20260120-cstr-sync-again-5912d7479909
Best regards,
Signature · 1 line
Tamir Duberstein <[email protected]>
Quoted 4 lines · Tamir Duberstein
C-String literals were added in Rust 1.77. Replace instances of
kernel::c_str!with C-String literals where possible.Signed-off-by Tamir Duberstein <[email protected]>
Quoted 10 lines
---
This is the same as my earlier change[0] but applies to additional code[1] which didn't make it to mainline in a timely manner and is now queued for v7.0.--- rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
[Cc Peter]
Peter, could you take this to into tip/locking/core so that it'll be in the PR of v7.0?
Quoted 4 lines · Tamir Duberstein
C-String literals were added in Rust 1.77. Replace instances of
kernel::c_str!with C-String literals where possible.Signed-off-by Tamir Duberstein <[email protected]>
Regards,
Boqun
Quoted 39 lines
---
This is the same as my earlier change[0] but applies to additional code[1] which didn't make it to mainline in a timely manner and is now queued for v7.0.--- rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)rust/kernel/sync.rs +1
-3@@ -126,13 +126,12 @@ fn drop(self: Pin<&mut Self>) {/// # Examples /// /// ``` -/// use kernel::c_str; /// use kernel::sync::{static_lock_class, Arc, SpinLock}; /// /// fn new_locked_int() -> Result<Arc<SpinLock<u32>>> { /// Arc::pin_init(SpinLock::new( /// 42, -/// c_str!("new_locked_int"), +/// c"new_locked_int", /// static_lock_class!(), /// ), GFP_KERNEL) /// } ---base-commit:
d08c85ac8894995d4b0d8fb48d2f6a3e53cd79ab
change-id: 20260120-cstr-sync-again-5912d7479909Best regards,
Signature · 1 line
Tamir Duberstein <[email protected]>
[GIT PULL][PATCH 0/1] Fixes for Rust synchronization PR of v7.0
Hi Peter,
Although we chatted about this over IRC, but I figured it might be better for me to just send a fix PR for this, so here is it.
Thanks!
Regards,
Boqun
--------------------------------->8
The following changes since commit ccf9e070116a81d29aae30db501d562c8efd1ed8:
rust: sync: Inline various lock related methods (2026-01-10 10:53:46 +0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/boqun/linux.git tags/rust-sync-fixes-for-v7.0-pr
for you to fetch changes up to 6583920e15fc567109e1c64ca58c917f52f40736:
rust: sync: Replace kernel::c_str! with C-Strings (2026-01-22 21:36:57 -0800)
----------------------------------------------------------------
Fixes for Rust sync v7.0 PR:
- Remove the usage of c_str!() in the example of static_lock_class!() -----BEGIN PGP SIGNATURE-----
iQFJBAABCAAzFiEEj5IosQTPz8XU1wRHSXnow7UH+rgFAmlzCUwVHGJvcXVuLmZl bmdAZ21haWwuY29tAAoJEEl56MO1B/q43YYIAIkVv+YTbNpODC5Kfy2F0/XxeHoB MbBSKvma6QR2m1Qx0c09o2NKcEU4ZnoPEi4WDhAs1ftfSyyc1CwE6gBApFirBvIu VzAWcEKJkM16+IiWQDQKPbWssraNmKGw4zeZlXi6q+iry+2r+Hy+6JdikcgCshYn +BYKjrkAh+mkXrQ1F95PfK0tfiT8fIbJCIeroPi9HlCmNlAYx0dP0i3YvF+5nWhB a5rU4TmQDKmCXXwyIqVQeOkK4kMme6wPOOSxjd5g4W/srS9hcmM3mYAASl1omm2X hr/9yyUOxSLUkG9e0x9XIhBkK4YwGS0dLIG6SQCvh//2vX9ek8BzBUvHzE0= =xOu4
-----END PGP SIGNATURE-----
----------------------------------------------------------------
Tamir Duberstein (1):
rust: sync: Replace kernel::c_str! with C-Strings
rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
Signature · 1 line
2.50.1 (Apple Git-155)
PATCH 1/1 rust: sync: Replace `kernel::c_str!` with C-Strings
From: Tamir Duberstein <[email protected]>
C-String literals were added in Rust 1.77. Replace instances of kernel::c_str! with C-String literals where possible.
--- rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
rust/kernel/sync.rs +1 -2
@@ -126,13 +126,12 @@ fn drop(self: Pin<&mut Self>) {/// # Examples /// /// ``` -/// use kernel::c_str; /// use kernel::sync::{static_lock_class, Arc, SpinLock}; /// /// fn new_locked_int() -> Result<Arc<SpinLock<u32>>> { /// Arc::pin_init(SpinLock::new( /// 42, -/// c_str!("new_locked_int"), +/// c"new_locked_int", /// static_lock_class!(), /// ), GFP_KERNEL) /// }
Signature · 1 line
2.50.1 (Apple Git-155)
[tip: locking/core] rust: sync: Replace `kernel::c_str!` with C-Strings
The following commit has been merged into the locking/core branch of tip:
The following commit has been merged into the locking/core branch of tip:
Commit-ID: e6de07249ef381b674f0d65adf9defcdab76b768 Gitweb: https://git.kernel.org/tip/e6de07249ef381b674f0d65adf9defcdab76b768 Author: Tamir Duberstein <[email protected]> AuthorDate: Thu, 22 Jan 2026 21:46:24 -08:00 Committer: Peter Zijlstra <[email protected]> CommitterDate: Wed, 28 Jan 2026 09:25:44 +01:00
rust: sync: Replace kernel::c_str! with C-Strings
C-String literals were added in Rust 1.77. Replace instances of kernel::c_str! with C-String literals where possible.
--- rust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
rust/kernel/sync.rs +1 -2
@@ -126,13 +126,12 @@ impl PinnedDrop for LockClassKey {/// # Examples /// /// ``` -/// use kernel::c_str; /// use kernel::sync::{static_lock_class, Arc, SpinLock}; /// /// fn new_locked_int() -> Result<Arc<SpinLock<u32>>> { /// Arc::pin_init(SpinLock::new( /// 42, -/// c_str!("new_locked_int"), +/// c"new_locked_int", /// static_lock_class!(), /// ), GFP_KERNEL) /// }
Re: [GIT PULL][PATCH 0/1] Fixes for Rust synchronization PR of v7.0
In reply to Boqun FengQuoted 2 lines · Boqun Feng
Hi Peter,
Gentle ping ;-)
Thanks!
Regards,
Boqun
Quoted 47 lines
Although we chatted about this over IRC, but I figured it might be better for me to just send a fix PR for this, so here is it.
Thanks!
Regards,
Boqun--------------------------------->8
The following changes since commitccf9e070116a81d29aae30db501d562c8efd1ed8:rust: sync: Inline various lock related methods (2026-01-10 10:53:46 +0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/boqun/linux.gittags/rust-sync-fixes-for-v7.0-prfor you to fetch changes up to
6583920e15fc567109e1c64ca58c917f52f40736:rust: sync: Replace
kernel::c_str!with C-Strings (2026-01-22 21:36:57 -0800)----------------------------------------------------------------
Fixes for Rust sync v7.0 PR:- Remove the usage of
c_str!()in the example of static_lock_class!() -----BEGIN PGP SIGNATURE-----iQFJBAABCAAzFiEEj5IosQTPz8XU1wRHSXnow7UH+rgFAmlzCUwVHGJvcXVuLmZl bmdAZ21haWwuY29tAAoJEEl56MO1B/q43YYIAIkVv+YTbNpODC5Kfy2F0/XxeHoB MbBSKvma6QR2m1Qx0c09o2NKcEU4ZnoPEi4WDhAs1ftfSyyc1CwE6gBApFirBvIu VzAWcEKJkM16+IiWQDQKPbWssraNmKGw4zeZlXi6q+iry+2r+Hy+6JdikcgCshYn +BYKjrkAh+mkXrQ1F95PfK0tfiT8fIbJCIeroPi9HlCmNlAYx0dP0i3YvF+5nWhB a5rU4TmQDKmCXXwyIqVQeOkK4kMme6wPOOSxjd5g4W/srS9hcmM3mYAASl1omm2X hr/9yyUOxSLUkG9e0x9XIhBkK4YwGS0dLIG6SQCvh//2vX9ek8BzBUvHzE0= =xOu4
-----END PGP SIGNATURE---------------------------------------------------------------------
Tamir Duberstein (1):
rust: sync: Replacekernel::c_str!with C-Stringsrust/kernel/sync.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)Signature · 1 line
2.50.1 (Apple Git-155)
Re: [GIT PULL][PATCH 0/1] Fixes for Rust synchronization PR of v7.0
In reply to Boqun FengQuoted 19 lines · Boqun Feng
Hi Peter,
Although we chatted about this over IRC, but I figured it might be better for me to just send a fix PR for this, so here is it.
Thanks!
Regards,
Boqun--------------------------------->8
The following changes since commitccf9e070116a81d29aae30db501d562c8efd1ed8:rust: sync: Inline various lock related methods (2026-01-10 10:53:46 +0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/boqun/linux.gittags/rust-sync-fixes-for-v7.0-pr
Quoted 8 lines
for you to fetch changes up to
6583920e15fc567109e1c64ca58c917f52f40736:rust: sync: Replace
kernel::c_str!with C-Strings (2026-01-22 21:36:57 -0800)----------------------------------------------------------------
Fixes for Rust sync v7.0 PR:- Remove the usage of
c_str!()in the example of static_lock_class!()
So I'm notoriously bad at keeping track of version numbers; but I'm thinking you want this in tip/locking/urgent, right? Thing is, it doesn't apply :/
Re: [GIT PULL][PATCH 0/1] Fixes for Rust synchronization PR of v7.0
Quoted 24 lines · Peter Zijlstra
Quoted 23 lines · Boqun Feng
Hi Peter,
Although we chatted about this over IRC, but I figured it might be better for me to just send a fix PR for this, so here is it.
Thanks!
Regards,
Boqun--------------------------------->8
The following changes since commitccf9e070116a81d29aae30db501d562c8efd1ed8:rust: sync: Inline various lock related methods (2026-01-10 10:53:46 +0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/boqun/linux.gittags/rust-sync-fixes-for-v7.0-prfor you to fetch changes up to
6583920e15fc567109e1c64ca58c917f52f40736:rust: sync: Replace
kernel::c_str!with C-Strings (2026-01-22 21:36:57 -0800)
Quoted 7 lines
Quoted 4 lines
----------------------------------------------------------------
Fixes for Rust sync v7.0 PR:- Remove the usage of
c_str!()in the example of static_lock_class!()So I'm notoriously bad at keeping track of version numbers; but I'm thinking you want this in tip/locking/urgent, right? Thing is, it
No, it's targeting tip/locking/core, it's a fix to the PR that is going into v7.0. Or I guess I could just say it's a "part 2" for the PR to reduce ambiguity?
Regards,
Boqun
Quoted 1 line
doesn't apply :/