pub struct ManaEndpoint<T: DeviceBacking> { /* private fields */ }
Implementations§
Source§impl<T: DeviceBacking> ManaEndpoint<T>
impl<T: DeviceBacking> ManaEndpoint<T>
pub async fn new( spawner: impl 'static + Spawn, vport: Vport<T>, dma_mode: GuestDmaMode, ) -> Self
Trait Implementations§
Source§impl<T: DeviceBacking> Endpoint for ManaEndpoint<T>
impl<T: DeviceBacking> Endpoint for ManaEndpoint<T>
Source§fn endpoint_type(&self) -> &'static str
fn endpoint_type(&self) -> &'static str
Returns an informational endpoint type.
Source§fn get_queues<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
config: Vec<QueueConfig<'life1>>,
rss: Option<&'life2 RssConfig<'life3>>,
queues: &'life4 mut Vec<Box<dyn Queue>>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn get_queues<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 mut self,
config: Vec<QueueConfig<'life1>>,
rss: Option<&'life2 RssConfig<'life3>>,
queues: &'life4 mut Vec<Box<dyn Queue>>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Initializes the queues associated with the endpoint. Read more
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,
Stops the endpoint. Read more
Source§fn is_ordered(&self) -> bool
fn is_ordered(&self) -> bool
Specifies whether packets are always completed in order.
Source§fn tx_offload_support(&self) -> TxOffloadSupport
fn tx_offload_support(&self) -> TxOffloadSupport
Specifies the supported set of transmit offloads.
Source§fn multiqueue_support(&self) -> MultiQueueSupport
fn multiqueue_support(&self) -> MultiQueueSupport
Specifies parameters related to supporting multiple queues.
Source§fn tx_fast_completions(&self) -> bool
fn tx_fast_completions(&self) -> bool
If true, transmits are guaranteed to complete quickly. This is used to
allow eliding tx notifications from the guest when there are already
some tx packets in flight.
Source§fn set_data_path_to_guest_vf<'life0, 'async_trait>(
&'life0 self,
use_vf: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn set_data_path_to_guest_vf<'life0, 'async_trait>(
&'life0 self,
use_vf: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sets the current data path for packet flow (e.g. via vmbus synthnic or through virtual function).
This is only supported for endpoints that pair with an accelerated device.
fn get_data_path_to_guest_vf<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn wait_for_endpoint_action<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = EndpointAction> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn wait_for_endpoint_action<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = EndpointAction> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
On completion, the return value indicates the specific endpoint action to take.
Source§fn link_speed(&self) -> u64
fn link_speed(&self) -> u64
Link speed in bps.
Source§impl<T: DeviceBacking> InspectMut for ManaEndpoint<T>
impl<T: DeviceBacking> InspectMut for ManaEndpoint<T>
Source§fn inspect_mut(&mut self, req: Request<'_>)
fn inspect_mut(&mut self, req: Request<'_>)
Inspects the object.
Auto Trait Implementations§
impl<T> Freeze for ManaEndpoint<T>
impl<T> !RefUnwindSafe for ManaEndpoint<T>
impl<T> Send for ManaEndpoint<T>
impl<T> Sync for ManaEndpoint<T>
impl<T> Unpin for ManaEndpoint<T>
impl<T> !UnwindSafe for ManaEndpoint<T>
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