2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/rust/kernel
Alice Ryhl 74fc34937d rust: miscdevice: change how f_ops vtable is constructed
I was helping someone with writing a new Rust abstraction, and we were
using the miscdevice abstraction as an example. While doing this, it
became clear to me that the way I implemented the f_ops vtable is
confusing to new Rust users, and that the approach used by the block
abstractions is less confusing.

Thus, update the miscdevice abstractions to use the same approach as
rust/kernel/block/mq/operations.rs.

Sorry about the large diff. This changes the indentation of a large
amount of code.

Reviewed-by: Christian Schrefl <chrisi.schrefl@gmail.com>
Signed-off-by: Alice Ryhl <aliceryhl@google.com>
Link: https://lore.kernel.org/r/20250227-miscdevice-fops-change-v1-1-c9e9b75d67eb@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-03-07 18:20:36 +01:00
..
alloc rust: kernel: add improved version of ForeignOwnable::borrow_mut 2025-01-13 23:46:07 +01:00
block Rust changes for v6.14 2025-01-21 17:48:03 -08:00
fs rust: file: add FileDescriptorReservation 2024-09-30 13:02:29 +02:00
init rust: treewide: switch to our kernel Box type 2024-10-15 22:56:59 +02:00
list rust: use derive(CoercePointee) on rustc >= 1.84.0 2025-01-13 23:45:30 +01:00
net Networking changes for 6.14. 2025-01-22 08:28:57 -08:00
sync Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
.gitignore rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
alloc.rs rust: use derive(CoercePointee) on rustc >= 1.84.0 2025-01-13 23:45:30 +01:00
block.rs rust: block: introduce kernel::block::mq module 2024-06-14 07:45:04 -06:00
build_assert.rs rust: add build_error! to the prelude 2025-01-10 00:19:09 +01:00
cred.rs rust: file: add Kuid wrapper 2024-09-30 13:02:29 +02:00
device_id.rs rust: implement IdArray, IdTable and RawDeviceId 2024-12-20 17:19:25 +01:00
device.rs Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
devres.rs rust: devres: remove action in Devres::drop 2025-01-10 15:49:06 +01:00
driver.rs rust: driver: address soundness issue in RegistrationOps 2025-01-07 11:31:45 +01:00
error.rs rust: error: import kernel's LayoutError instead of core's 2025-01-13 23:45:13 +01:00
firmware.rs rust: map long to isize and char to u8 2024-12-16 21:49:33 +01:00
fs.rs rust: file: add Rust abstraction for struct file 2024-09-30 13:02:28 +02:00
generated_arch_static_branch_asm.rs.S rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
init.rs rust: init: use explicit ABI to clean warning in future compilers 2025-02-06 00:15:49 +01:00
io.rs rust: add io::{Io, IoRaw} base types 2024-12-20 17:19:26 +01:00
ioctl.rs rust: start using the #[expect(...)] attribute 2024-10-07 21:39:57 +02:00
jump_label.rs rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
kunit.rs rust: kunit: use C-string literals to clean warning 2024-10-01 23:46:42 +02:00
lib.rs Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
list.rs rust: enable clippy::undocumented_unsafe_blocks lint 2024-10-07 21:39:05 +02:00
miscdevice.rs rust: miscdevice: change how f_ops vtable is constructed 2025-03-07 18:20:36 +01:00
net.rs rust: core abstractions for network PHY drivers 2023-12-15 09:35:50 +00:00
of.rs rust: of: add of::DeviceId abstraction 2024-12-20 17:21:04 +01:00
page.rs rust: page: remove unnecessary helper function from doctest 2025-01-13 23:44:55 +01:00
pci.rs rust: driver: address soundness issue in RegistrationOps 2025-01-07 11:31:45 +01:00
pid_namespace.rs rust: add PidNamespace 2024-10-08 15:44:36 +02:00
platform.rs rust: driver: address soundness issue in RegistrationOps 2025-01-07 11:31:45 +01:00
prelude.rs rust: add build_error! to the prelude 2025-01-10 00:19:09 +01:00
print.rs rust: cleanup unnecessary casts 2024-12-16 21:49:33 +01:00
rbtree.rs rust: rbtree: remove unwrap in asserts 2025-01-13 23:44:29 +01:00
revocable.rs rust: add Revocable type 2024-12-20 17:19:26 +01:00
security.rs rust: finish using custom FFI integer types 2024-12-16 21:48:45 +01:00
seq_file.rs rust: finish using custom FFI integer types 2024-12-16 21:48:45 +01:00
sizes.rs rust: sizes: add commonly used constants 2024-08-30 10:27:34 +01:00
static_assert.rs rust: static_assert: add static_assert! macro 2022-12-04 01:59:16 +01:00
std_vendor.rs rust: std_vendor: update dbg macro from Rust upstream 2024-10-10 00:33:42 +02:00
str.rs rust: str: replace unwraps with question mark operators 2025-01-13 23:45:05 +01:00
sync.rs Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
task.rs rust: fix up formatting after merge 2024-11-26 17:54:58 -08:00
time.rs rust: use custom FFI integer types 2024-11-10 23:58:00 +01:00
tracepoint.rs rust: add tracepoint support 2024-11-04 16:21:44 -05:00
transmute.rs rust: kernel: move FromBytes and AsBytes traits to a new transmute module 2024-10-10 00:33:42 +02:00
types.rs Driver core and debugfs updates 2025-01-28 12:25:12 -08:00
uaccess.rs rust: uaccess: generalize userSliceReader to support any Vec 2025-01-13 23:46:23 +01:00
workqueue.rs Rust changes for v6.14 2025-01-21 17:48:03 -08:00