Enum arch::DeviceRegistrationError
source · pub enum DeviceRegistrationError {
Show 29 variants
AddrsExhausted,
AllocateDeviceAddrs(PciDeviceError),
AllocateIoAddrs(PciDeviceError),
AllocateIoResource(Error),
AllocateIrq,
AllocateIrqResource(VfioError),
BrokenPciTopology,
CloneJail(Error),
Cmdline(Error),
ConfigureWindowSize(PciDeviceError),
CreatePipe(Error),
CreateRoot(Error),
CreateSerialDevice(SerialError),
CreateTube(TubeError),
EventClone(Error),
EventCreate(Error),
GenerateAcpi,
IrqsExhausted,
MissingDeviceTreeSymbol,
MissingRequiredSerialDevice(u8),
MmioInsert(BusError),
PciRootAddDevice(PciDeviceError),
ProxyDeviceCreation(ProxyError),
RegisterBattery(BatteryError),
RegisterDevice(SendError<PciRootCommand>),
RegisterDeviceCapabilities(PciDeviceError),
RegisterIoevent(Error),
RegisterIrqfd(Error),
SetupVfioPlatformIrq(Error),
}
Expand description
Errors for device manager.
Variants§
AddrsExhausted
No more MMIO space available.
AllocateDeviceAddrs(PciDeviceError)
Could not allocate device address space for the device.
AllocateIoAddrs(PciDeviceError)
Could not allocate IO space for the device.
AllocateIoResource(Error)
Could not allocate MMIO or IO resource for the device.
AllocateIrq
Could not allocate an IRQ number.
AllocateIrqResource(VfioError)
Could not allocate IRQ resource for the device.
BrokenPciTopology
Broken pci topology
CloneJail(Error)
Unable to clone a jail for the device.
Cmdline(Error)
Appending to kernel command line failed.
ConfigureWindowSize(PciDeviceError)
Configure window size failed.
CreatePipe(Error)
CreateRoot(Error)
CreateSerialDevice(SerialError)
CreateTube(TubeError)
EventClone(Error)
Could not clone an event.
EventCreate(Error)
Could not create an event.
GenerateAcpi
Failed to generate ACPI content.
IrqsExhausted
No more IRQs are available.
MissingDeviceTreeSymbol
VFIO device is missing a DT symbol.
MissingRequiredSerialDevice(u8)
Missing a required serial device.
MmioInsert(BusError)
Could not add a device to the mmio bus.
PciRootAddDevice(PciDeviceError)
Failed to insert device into PCI root.
ProxyDeviceCreation(ProxyError)
Failed to initialize proxy device for jailed device.
RegisterBattery(BatteryError)
Failed to register battery device.
RegisterDevice(SendError<PciRootCommand>)
Could not register PCI device to pci root bus
RegisterDeviceCapabilities(PciDeviceError)
Could not register PCI device capabilities.
RegisterIoevent(Error)
Failed to register ioevent with VM.
RegisterIrqfd(Error)
Failed to register irq event with VM.
SetupVfioPlatformIrq(Error)
Could not setup VFIO platform IRQ for the device.
Trait Implementations§
source§impl Debug for DeviceRegistrationError
impl Debug for DeviceRegistrationError
source§impl Display for DeviceRegistrationError
impl Display for DeviceRegistrationError
source§impl Error for DeviceRegistrationError
impl Error for DeviceRegistrationError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
Auto Trait Implementations§
impl !RefUnwindSafe for DeviceRegistrationError
impl Send for DeviceRegistrationError
impl Sync for DeviceRegistrationError
impl Unpin for DeviceRegistrationError
impl !UnwindSafe for DeviceRegistrationError
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.