pub struct AdministratorSynchronousProxy { /* private fields */ }
Implementations§
source§impl AdministratorSynchronousProxy
impl AdministratorSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
sourcepub fn wait_for_event(
&self,
deadline: Time
) -> Result<AdministratorEvent, Error>
pub fn wait_for_event( &self, deadline: Time ) -> Result<AdministratorEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
sourcepub fn unregister_system_storage_for_shutdown(
&self,
___deadline: Time
) -> Result<i32, Error>
pub fn unregister_system_storage_for_shutdown( &self, ___deadline: Time ) -> Result<i32, Error>
This is a temporary API until DriverManager can ensure that base drivers will be shut down automatically before fshost exits. This will happen once drivers-as-components is implemented. In the meantime, this API should only be called by fshost, and it must be called before fshost exits. This function iterates over the devices and suspends any device whose driver lives in storage. This API must be called by fshost before it shuts down. Otherwise the devices that live in storage may page fault as it access memory that should be provided by the exited fshost. This function will not return until the devices are suspended. If there are no devices that live in storage, this function will immediatetly return.
sourcepub fn suspend_without_exit(&self) -> Result<(), Error>
pub fn suspend_without_exit(&self) -> Result<(), Error>
Tell DriverManager to go through the suspend process, but don’t exit afterwards. This is used in tests to check that suspend works correctly.