pub struct OpenVmmPetriBackend { /* private fields */ }Expand description
OpenVMM Petri Backend
Trait Implementations§
Source§impl PetriVmmBackend for OpenVmmPetriBackend
impl PetriVmmBackend for OpenVmmPetriBackend
Source§type VmmConfig = PetriVmConfigOpenVmm
type VmmConfig = PetriVmConfigOpenVmm
VMM-specific configuration
Source§type VmRuntime = PetriVmOpenVmm
type VmRuntime = PetriVmOpenVmm
Runtime object
Source§fn check_compat(firmware: &Firmware, arch: MachineArch) -> bool
fn check_compat(firmware: &Firmware, arch: MachineArch) -> bool
Check whether the combination of firmware and architecture is
supported on the VMM.
Source§fn quirks(firmware: &Firmware) -> (GuestQuirksInner, VmmQuirks)
fn quirks(firmware: &Firmware) -> (GuestQuirksInner, VmmQuirks)
Select backend specific quirks guest and vmm quirks.
Source§fn default_servicing_flags() -> OpenHclServicingFlags
fn default_servicing_flags() -> OpenHclServicingFlags
Get the default servicing flags (based on what this backend supports)
Source§fn create_guest_dump_disk() -> Result<Option<(Arc<TempPath>, Box<dyn FnOnce() -> Result<Box<dyn ReadWriteSeek>>>)>>
fn create_guest_dump_disk() -> Result<Option<(Arc<TempPath>, Box<dyn FnOnce() -> Result<Box<dyn ReadWriteSeek>>>)>>
Create a disk for guest crash dumps, and a post-test hook to open the disk
to allow for reading the dumps.
Source§fn new(resolver: &ArtifactResolver<'_>) -> Self
fn new(resolver: &ArtifactResolver<'_>) -> Self
Resolve any artifacts needed to use this backend
Source§fn run<'life0, 'async_trait>(
self,
config: PetriVmConfig,
modify_vmm_config: Option<impl 'async_trait + FnOnce(PetriVmConfigOpenVmm) -> PetriVmConfigOpenVmm + Send>,
resources: &'life0 PetriVmResources,
) -> Pin<Box<dyn Future<Output = Result<Self::VmRuntime>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run<'life0, 'async_trait>(
self,
config: PetriVmConfig,
modify_vmm_config: Option<impl 'async_trait + FnOnce(PetriVmConfigOpenVmm) -> PetriVmConfigOpenVmm + Send>,
resources: &'life0 PetriVmResources,
) -> Pin<Box<dyn Future<Output = Result<Self::VmRuntime>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Create and start VM from the generic config using the VMM backend
Auto Trait Implementations§
impl Freeze for OpenVmmPetriBackend
impl RefUnwindSafe for OpenVmmPetriBackend
impl Send for OpenVmmPetriBackend
impl Sync for OpenVmmPetriBackend
impl Unpin for OpenVmmPetriBackend
impl UnwindSafe for OpenVmmPetriBackend
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