pub enum Error {
Show 38 variants
CopyConfig(Error),
CreateBackendReqHandler(Error),
CreateEvent(Error),
GetConfig(Error),
GetFeatures(Error),
GetHostAddress(GuestMemoryError),
GetProtocolFeatures(Error),
GetQueueNum(Error),
GetVringBase(Error),
MsixConfigUnavailable,
MsixIrqfdUnavailable,
ProtocolFeatureNotNegoiated(VhostUserProtocolFeatures),
ResetOwner(Error),
Restore(Error),
SerdeValueToSlice(Error),
SetConfig(Error),
SetDeviceRequestChannel(Error),
SetFeatures(Error),
SetMemTable(Error),
SetOwner(Error),
SetProtocolFeatures(Error),
SetVringAddr(Error),
SetVringBase(Error),
SetVringCall(Error),
SetVringEnable(Error),
SetVringKick(Error),
SetVringNum(Error),
ShmemRegions(Error),
Sleep(Error),
SliceToSerdeValue(Error),
Snapshot(Error),
SocketConnect(Error),
SpawnWorker(Error),
TagTooLong {
len: usize,
max: usize,
},
TooManyShmemRegions(usize),
VringBaseTooBig(u32),
Wake(Error),
WakeWorker,
}
Variants§
CopyConfig(Error)
Failed to copy config to a buffer.
CreateBackendReqHandler(Error)
Failed to create backend request handler
CreateEvent(Error)
Failed to create base::Event
.
GetConfig(Error)
Failed to get config.
GetFeatures(Error)
Failed to get features.
GetHostAddress(GuestMemoryError)
Failed to get host address.
GetProtocolFeatures(Error)
Failed to get protocol features.
GetQueueNum(Error)
Failed to get number of queues.
GetVringBase(Error)
Failed to get vring base offset.
MSI-X config is unavailable.
MSI-X irqfd is unavailable.
ProtocolFeatureNotNegoiated(VhostUserProtocolFeatures)
ResetOwner(Error)
Failed to reset owner.
Restore(Error)
Failed to restore.
SerdeValueToSlice(Error)
Failed to convert serde Value to a slice.
SetConfig(Error)
Failed to set config.
SetDeviceRequestChannel(Error)
Failed to set device request channel.
SetFeatures(Error)
Failed to set features.
SetMemTable(Error)
Failed to set memory map regions.
SetOwner(Error)
Failed to set owner.
SetProtocolFeatures(Error)
Failed to set protocol features.
SetVringAddr(Error)
Failed to set vring address.
SetVringBase(Error)
Failed to set vring base offset.
SetVringCall(Error)
Failed to set eventfd to signal used vring buffers.
SetVringEnable(Error)
Failed to enable or disable vring.
SetVringKick(Error)
Failed to set eventfd for adding buffers to vring.
SetVringNum(Error)
Failed to set the size of the queue.
ShmemRegions(Error)
Error getting the shmem regions.
Sleep(Error)
Failed to sleep the device.
SliceToSerdeValue(Error)
Failed to convert a slice to a serde Value.
Snapshot(Error)
Failed to snapshot.
SocketConnect(Error)
Failed to connect socket.
SpawnWorker(Error)
Failed to spawn worker thread.
TagTooLong
The tag for the Fs device was too long to fit in the config space.
TooManyShmemRegions(usize)
Too many shmem regions.
VringBaseTooBig(u32)
vring base from vhost-user backend is too big.
Wake(Error)
failed to wake the vhost user device.
WakeWorker
failed to wake the worker.
Trait Implementations§
source§impl Error for Error
impl Error for Error
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 Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl !UnwindSafe for Error
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.