linux/rust/kernel
Danilo Krummrich e1a51c2bf4 rust: driver: address soundness issue in `RegistrationOps`
The `RegistrationOps` trait holds some obligations to the caller and
implementers. While being documented, the trait and the corresponding
functions haven't been marked as unsafe.

Hence, markt the trait and functions unsafe and add the corresponding
safety comments.

This patch does not include any fuctional changes.

Reported-by: Gary Guo <gary@garyguo.net>
Closes: https://lore.kernel.org/rust-for-linux/20241224195821.3b43302b.gary@garyguo.net/
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
Reviewed-by: Gary Guo <gary@garyguo.net>
Link: https://lore.kernel.org/r/20250103164655.96590-4-dakr@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-01-07 11:31:45 +01:00
..
alloc rust: alloc: Fix `ArrayLayout` allocations 2024-11-25 00:11:07 +01:00
block block-6.13-20242901 2024-11-30 15:47:29 -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: enable arbitrary_self_types and remove `Receiver` 2024-10-07 21:39:57 +02:00
net Rust changes for v6.13 2024-11-26 14:00:26 -08:00
sync rust: add rcu abstraction 2024-12-20 17:19:26 +01:00
.gitignore rust: jump_label: skip formatting generated file 2024-11-20 13:32:42 -05:00
alloc.rs rust: alloc: update module comment of alloc.rs 2024-10-15 23:10:32 +02:00
block.rs rust: block: introduce `kernel::block::mq` module 2024-06-14 07:45:04 -06:00
build_assert.rs rust: upgrade to Rust 1.68.2 2023-05-31 17:35:03 +02:00
cred.rs rust: file: add `Kuid` wrapper 2024-09-30 13:02:29 +02:00
device.rs rust: add `dev_*` print macros. 2024-11-05 05:33:46 +01:00
device_id.rs rust: implement `IdArray`, `IdTable` and `RawDeviceId` 2024-12-20 17:19:25 +01:00
devres.rs rust: add devres abstraction 2024-12-20 17:19:26 +01:00
driver.rs rust: driver: address soundness issue in `RegistrationOps` 2025-01-07 11:31:45 +01:00
error.rs rust: use custom FFI integer types 2024-11-10 23:58:00 +01:00
firmware.rs rust: device: change the from_raw() function 2024-10-03 13:54:48 +02: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: use custom FFI integer types 2024-11-10 23:58:00 +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 rust: io: move module entry to its correct location 2025-01-07 11:31:45 +01:00
list.rs rust: enable `clippy::undocumented_unsafe_blocks` lint 2024-10-07 21:39:05 +02:00
miscdevice.rs rust: miscdevice: add fops->show_fdinfo() hook 2024-12-16 16:12:57 +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: add Rust version of PAGE_ALIGN 2024-10-21 20:34:46 +02: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 Char/Misc/IIO/Whatever driver subsystem updates for 6.13-rc1 2024-11-29 11:58:27 -08:00
print.rs rust: start using the `#[expect(...)]` attribute 2024-10-07 21:39:57 +02:00
rbtree.rs rust: treewide: switch to our kernel `Box` type 2024-10-15 22:56:59 +02:00
revocable.rs rust: add `Revocable` type 2024-12-20 17:19:26 +01:00
security.rs rust: security: add abstraction for secctx 2024-09-30 13:02:28 +02:00
seq_file.rs rust: add seqfile abstraction 2024-10-08 14:32:39 +02: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: use custom FFI integer types 2024-11-10 23:58:00 +01:00
sync.rs rust: add rcu abstraction 2024-12-20 17:19:26 +01: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 rust: types: add `Opaque::pin_init` 2024-12-20 17:19:26 +01:00
uaccess.rs rust: use custom FFI integer types 2024-11-10 23:58:00 +01:00
workqueue.rs rust: treewide: switch to our kernel `Box` type 2024-10-15 22:56:59 +02:00