Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

samples: rust: debugfs: 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.

Signed-off-by: Tamir Duberstein <tamird@gmail.com>
Reviewed-by: Daniel Almeida <daniel.almeida@collabora.com>
Link: https://patch.msgid.link/20251222-cstr-driver-core-v1-7-1142a177d0fd@gmail.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>

authored by

Tamir Duberstein and committed by
Danilo Krummrich
652ff124 f47a8f59

+15 -21
+8 -9
samples/rust/rust_debugfs.rs
··· 34 34 use core::str::FromStr; 35 35 use kernel::{ 36 36 acpi, 37 - c_str, 38 37 debugfs::{ 39 38 Dir, 40 39 File, // ··· 112 113 ACPI_TABLE, 113 114 MODULE_ACPI_TABLE, 114 115 <RustDebugFs as platform::Driver>::IdInfo, 115 - [(acpi::DeviceId::new(c_str!("LNUXBEEF")), ())] 116 + [(acpi::DeviceId::new(c"LNUXBEEF"), ())] 116 117 ); 117 118 118 119 impl platform::Driver for RustDebugFs { ··· 139 140 140 141 impl RustDebugFs { 141 142 fn build_counter(dir: &Dir) -> impl PinInit<File<Atomic<usize>>> + '_ { 142 - dir.read_write_file(c_str!("counter"), Atomic::<usize>::new(0)) 143 + dir.read_write_file(c"counter", Atomic::<usize>::new(0)) 143 144 } 144 145 145 146 fn build_inner(dir: &Dir) -> impl PinInit<File<Mutex<Inner>>> + '_ { 146 - dir.read_write_file(c_str!("pair"), new_mutex!(Inner { x: 3, y: 10 })) 147 + dir.read_write_file(c"pair", new_mutex!(Inner { x: 3, y: 10 })) 147 148 } 148 149 149 150 fn new(pdev: &platform::Device<Core>) -> impl PinInit<Self, Error> + '_ { 150 - let debugfs = Dir::new(c_str!("sample_debugfs")); 151 + let debugfs = Dir::new(c"sample_debugfs"); 151 152 let dev = pdev.as_ref(); 152 153 153 154 try_pin_init! { 154 155 Self { 155 156 _compatible <- debugfs.read_only_file( 156 - c_str!("compatible"), 157 + c"compatible", 157 158 dev.fwnode() 158 159 .ok_or(ENOENT)? 159 - .property_read::<CString>(c_str!("compatible")) 160 + .property_read::<CString>(c"compatible") 160 161 .required_by(dev)?, 161 162 ), 162 163 counter <- Self::build_counter(&debugfs), 163 164 inner <- Self::build_inner(&debugfs), 164 165 array_blob <- debugfs.read_write_binary_file( 165 - c_str!("array_blob"), 166 + c"array_blob", 166 167 new_mutex!([0x62, 0x6c, 0x6f, 0x62]), 167 168 ), 168 169 vector_blob <- debugfs.read_write_binary_file( 169 - c_str!("vector_blob"), 170 + c"vector_blob", 170 171 new_mutex!(kernel::kvec!(0x42; SZ_4K)?), 171 172 ), 172 173 _debugfs: debugfs,
+7 -12
samples/rust/rust_debugfs_scoped.rs
··· 7 7 //! track them all. 8 8 9 9 use kernel::{ 10 - c_str, 11 10 debugfs::{ 12 11 Dir, 13 12 Scope, // ··· 88 89 }; 89 90 dir.read_write_file(&name, val); 90 91 } 91 - dir.read_write_binary_file(c_str!("blob"), &dev_data.blob); 92 + dir.read_write_binary_file(c"blob", &dev_data.blob); 92 93 }, 93 94 ), 94 95 GFP_KERNEL, ··· 127 128 } 128 129 129 130 fn init_control(base_dir: &Dir, dyn_dirs: Dir) -> impl PinInit<Scope<ModuleData>> + '_ { 130 - base_dir.scope( 131 - ModuleData::init(dyn_dirs), 132 - c_str!("control"), 133 - |data, dir| { 134 - dir.write_only_callback_file(c_str!("create"), data, &create_file_write); 135 - dir.write_only_callback_file(c_str!("remove"), data, &remove_file_write); 136 - }, 137 - ) 131 + base_dir.scope(ModuleData::init(dyn_dirs), c"control", |data, dir| { 132 + dir.write_only_callback_file(c"create", data, &create_file_write); 133 + dir.write_only_callback_file(c"remove", data, &remove_file_write); 134 + }) 138 135 } 139 136 140 137 impl kernel::Module for RustScopedDebugFs { 141 138 fn init(_module: &'static kernel::ThisModule) -> Result<Self> { 142 - let base_dir = Dir::new(c_str!("rust_scoped_debugfs")); 143 - let dyn_dirs = base_dir.subdir(c_str!("dynamic")); 139 + let base_dir = Dir::new(c"rust_scoped_debugfs"); 140 + let dyn_dirs = base_dir.subdir(c"dynamic"); 144 141 Ok(Self { 145 142 _data: KBox::pin_init(init_control(&base_dir, dyn_dirs), GFP_KERNEL)?, 146 143 })