linux/rust
Danilo Krummrich bde0149ce5 rust: dma: tie DMA allocations to the device's bound lifetime
DMA allocations carry device resources (e.g. IOMMU mappings) that must
 not outlive the device's bound lifetime. Add lifetime parameters to the
 DMA allocation types (Coherent, CoherentBox, CoherentHandle) to enforce
 at compile time that they are freed before the device is unbound.
 
 Since DMA types with lifetime parameters are exposed through debugfs in
 the nova-core driver, first drop the unnecessary T: 'static bound from
 the debugfs ScopedDir file creation methods by formalizing a type
 invariant on FileOps.
 
 This is a stable tag for other trees to merge.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQS2q/xV6QjXAdC7k+1FlHeO1qrKLgUCap13MgAKCRBFlHeO1qrK
 Ls1tAP9ugwnM86l9VMAN/oe82DKYLdrtM3CE1exgPBVyfXKICAD+Ky8yR7PDuN+6
 G9NInskajlb5+bzCWBpbt7Y2XylmDAw=
 =AwqP
 -----END PGP SIGNATURE-----

Merge patch series "rust: dma: tie DMA allocations to the device's bound lifetime"

Danilo Krummrich <dakr@kernel.org> says:

DMA allocations carry device resources (e.g. IOMMU mappings) that must
not outlive the device's bound lifetime. Add lifetime parameters to the
DMA allocation types (Coherent, CoherentBox, CoherentHandle) to enforce
at compile time that they are freed before the device is unbound.

Since DMA types with lifetime parameters are exposed through debugfs in
the nova-core driver, first drop the unnecessary T: 'static bound from
the debugfs ScopedDir file creation methods by formalizing a type
invariant on FileOps.

Link: https://patch.msgid.link/20260830193824.471089-1-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-09-07 22:50:04 +02:00
..
bindings Char/Misc/IIO/etc driver update for 7.3-rc1 2026-08-25 09:38:50 -07:00
helpers Char/Misc/IIO/etc driver update for 7.3-rc1 2026-08-25 09:38:50 -07:00
kernel rust: dma: tie DMA allocations to the device's bound lifetime 2026-09-07 22:50:04 +02:00
macros rust: io: register: unify handling of register with/without bitfields 2026-09-06 13:39:49 +02:00
pin-init rust: pin-init: add #[inline] to small functions 2026-08-05 11:36:18 +01:00
proc-macro2 rust: proc-macro2: rebuild if the version text changes 2026-01-23 10:44:27 +01:00
quote rust: quote: add README.md 2025-11-24 17:15:43 +01:00
syn rust: syn: add README.md 2025-11-24 17:15:47 +01:00
uapi Char/Misc/IIO/etc driver update for 7.3-rc1 2026-08-25 09:38:50 -07:00
zerocopy rust: zerocopy: update to v0.8.54 2026-07-11 13:46:02 +02:00
zerocopy-derive rust: zerocopy: update to v0.8.54 2026-07-11 13:46:02 +02:00
.gitignore
.kunitconfig
bindgen_parameters rust/bindgen_parameters: Mark s390 types as opaque to prevent repr conflicts 2026-06-10 16:25:13 +02:00
build_error.rs
compiler_builtins.rs rust: Make __udivdi3() and __umoddi3() panic 2026-07-31 16:57:48 +05:30
exports.c kbuild: rust: provide an option to inline C helpers into Rust 2026-03-30 02:03:52 +02:00
ffi.rs rust: replace CStr with core::ffi::CStr 2025-10-22 07:47:27 +02:00
Makefile Rust fixes for v7.3 2026-08-30 09:47:39 -07:00