pub struct StorageDevice { /* private fields */ }
Implementations§
Source§impl StorageDevice
impl StorageDevice
Sourcepub fn build_scsi(
driver_source: &VmTaskDriverSource,
controller: &ScsiController,
instance_id: Guid,
max_sub_channel_count: u16,
io_queue_depth: u32,
) -> Self
pub fn build_scsi( driver_source: &VmTaskDriverSource, controller: &ScsiController, instance_id: Guid, max_sub_channel_count: u16, io_queue_depth: u32, ) -> Self
Returns a new SCSI device.
Trait Implementations§
Source§impl InspectMut for StorageDevice
impl InspectMut for StorageDevice
Source§fn inspect_mut(&mut self, req: Request<'_>)
fn inspect_mut(&mut self, req: Request<'_>)
Inspects the object.
Source§impl SaveRestoreVmbusDevice for StorageDevice
impl SaveRestoreVmbusDevice for StorageDevice
Source§fn save<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<SavedStateBlob, SaveError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn save<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<SavedStateBlob, SaveError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Save the stopped device.
Source§fn restore<'life0, 'life1, 'async_trait>(
&'life0 mut self,
control: RestoreControl<'life1>,
state: SavedStateBlob,
) -> Pin<Box<dyn Future<Output = Result<(), RestoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn restore<'life0, 'life1, 'async_trait>(
&'life0 mut self,
control: RestoreControl<'life1>,
state: SavedStateBlob,
) -> Pin<Box<dyn Future<Output = Result<(), RestoreError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Restore the stopped device. Read more
Source§impl VmbusDevice for StorageDevice
impl VmbusDevice for StorageDevice
Source§fn max_subchannels(&self) -> u16
fn max_subchannels(&self) -> u16
The maximum number of subchannels supported by this device.
Source§fn open<'life0, 'life1, 'async_trait>(
&'life0 mut self,
channel_index: u16,
open_request: &'life1 OpenRequest,
) -> Pin<Box<dyn Future<Output = Result<(), ChannelOpenError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn open<'life0, 'life1, 'async_trait>(
&'life0 mut self,
channel_index: u16,
open_request: &'life1 OpenRequest,
) -> Pin<Box<dyn Future<Output = Result<(), ChannelOpenError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Opens the channel number
channel_idx
.Source§fn close<'life0, 'async_trait>(
&'life0 mut self,
channel_index: u16,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn close<'life0, 'async_trait>(
&'life0 mut self,
channel_index: u16,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Closes the channel number
channel_idx
.Source§fn retarget_vp<'life0, 'async_trait>(
&'life0 mut self,
channel_index: u16,
target_vp: u32,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn retarget_vp<'life0, 'async_trait>(
&'life0 mut self,
channel_index: u16,
target_vp: u32,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Notifies the device that interrupts for channel will now target
target_vp
.Source§fn stop<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stop<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stop processing of all channels.
Source§fn supports_save_restore(&mut self) -> Option<&mut dyn SaveRestoreVmbusDevice>
fn supports_save_restore(&mut self) -> Option<&mut dyn SaveRestoreVmbusDevice>
Returns a trait used to save/restore the channel. Read more
Auto Trait Implementations§
impl Freeze for StorageDevice
impl !RefUnwindSafe for StorageDevice
impl Send for StorageDevice
impl !Sync for StorageDevice
impl Unpin for StorageDevice
impl !UnwindSafe for StorageDevice
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more