Skip to main content

UserAddressSpaceOwner

Trait UserAddressSpaceOwner 

Source
pub unsafe trait UserAddressSpaceOwner: Send + Sync {
    // Required methods
    fn prepare_activation(
        &self,
        cpu: usize,
    ) -> Result<SchedulerAddressSpaceActivation, TaskError>;
    fn detach_from_task(&self);
}
Expand description

OS ownership held by a runtime task token until its last CPU lease drains.

§Safety

Every prepared activation must own the declared root and publish its CPU in the MM’s TLB target set before returning. The root must remain valid until the activation is released. Detaching a task must retain storage needed by lazy CPUs; activation callbacks must not perform a final storage release.

Required Methods§

Source

fn prepare_activation( &self, cpu: usize, ) -> Result<SchedulerAddressSpaceActivation, TaskError>

Acquires a CPU activation without allocation, blocking, or hardware I/O.

Source

fn detach_from_task(&self)

Drops task-scoped ownership in ordinary task context, exactly once.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§