Enum AdminQueueFaultBehavior

Source
pub enum AdminQueueFaultBehavior<T> {
    Update(T),
    Drop,
    Delay(Duration),
    Panic(String),
    CustomPayload(Vec<u8>),
    Verify(Option<OneshotSender<()>>),
}
Expand description

Supported fault behaviour for NVMe admin queues

Variants§

§

Update(T)

Update the queue entry with the returned data

§

Drop

Drop the queue entry

§

Delay(Duration)

Delay. Note: This delay is not asynchronously applied. i.e. Subsequent commands will be processed until the delay is over.

§

Panic(String)

Panic

§

CustomPayload(Vec<u8>)

Writes the given payload to the PRP range. The test should ensure that the payload is of valid size. If the size is too large, the fault controller will panic. This behavior is not yet supported by the submission queue fault.

§

Verify(Option<OneshotSender<()>>)

Verify that a command was seen.

Trait Implementations§

Source§

impl<T: Debug> Debug for AdminQueueFaultBehavior<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<T> DefaultEncoding for AdminQueueFaultBehavior<T>

Source§

type Encoding = OneofEncoder

The encoding to use for the serialization. Read more
Source§

impl<'encoding, T> OneofDecode<'encoding, Resource> for AdminQueueFaultBehavior<T>
where T: DefaultEncoding, T::Encoding: FieldDecode<'encoding, T, Resource>,

Source§

fn read_variant( item: &mut InplaceOption<'_, Self>, n: u32, field: FieldReader<'encoding, '_, Resource>, ) -> Result<()>

Read the specified variant from the reader.
Source§

impl<T> OneofEncode<Resource> for AdminQueueFaultBehavior<T>
where T: DefaultEncoding, T::Encoding: FieldEncode<T, Resource>,

Source§

fn write_variant(self, writer: MessageWriter<'_, '_, Resource>)

Write the variant to the writer.
Source§

fn compute_variant_size(&mut self, sizer: MessageSizer<'_>)

Compute the size of the variant.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> SerializeMessage for T
where T: 'static + MeshPayload + Send,

§

type Concrete = T

The underlying concrete message type.
§

fn compute_message_size(&mut self, sizer: MessageSizer<'_>)

Computes the message size, as in [MessageEncode::compute_message_size].
§

fn write_message(self, writer: MessageWriter<'_, '_, Resource>)

Writes the message, as in [MessageEncode::write_message].
§

fn extract(self) -> <T as SerializeMessage>::Concrete

Extract the concrete message.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more