[PATCH 2/9] rust: mm: add `task_size` helper

From: Ke Sun via B4 Relay

Date: Tue Sep 01 2026 - 13:26:10 EST


From: Alvin Sun <alvin.sun@xxxxxxxxx>

Expose the task's address space size. It is used by the Tyr driver
for splitting a VM's GPU address space into user and kernel regions.

Signed-off-by: Alvin Sun <alvin.sun@xxxxxxxxx>
---
rust/kernel/mm.rs | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/rust/kernel/mm.rs b/rust/kernel/mm.rs
index 4764d7b68f2a7..d2dfbb7d43972 100644
--- a/rust/kernel/mm.rs
+++ b/rust/kernel/mm.rs
@@ -149,6 +149,13 @@ pub fn mmget_not_zero(&self) -> Option<ARef<MmWithUser>> {
None
}
}
+
+ /// The size of the process virtual address space.
+ #[inline]
+ pub fn task_size(&self) -> usize {
+ // SAFETY: `self.as_raw()` is a valid pointer to an `mm_struct` per the type invariants.
+ unsafe { (*self.as_raw()).__bindgen_anon_1.task_size }
+ }
}

// These methods require `mm_users` to be non-zero.

--
2.43.0