pub struct PushQueue<Prev: Pusher> { /* private fields */ }netdev only.Implementations§
Source§impl<Prev: Pusher> PushQueue<Prev>
impl<Prev: Pusher> PushQueue<Prev>
pub fn new(prev: Prev) -> Self
pub fn end_nested(self) -> Prev
Sourcepub fn push_id(self, value: u32) -> Self
pub fn push_id(self, value: u32) -> Self
Queue index; most queue types are indexed like a C array, with indexes starting at 0 and ending at queue count - 1. Queue indexes are scoped to an interface and queue type.
Sourcepub fn push_ifindex(self, value: u32) -> Self
pub fn push_ifindex(self, value: u32) -> Self
ifindex of the netdevice to which the queue belongs.
Sourcepub fn push_type(self, value: u32) -> Self
pub fn push_type(self, value: u32) -> Self
Queue type as rx, tx. Each queue type defines a separate ID space. XDP TX queues allocated in the kernel are not linked to NAPIs and thus not listed. AF_XDP queues will have more information set in the xsk attribute.
Associated type: QueueType (enum)
Sourcepub fn push_napi_id(self, value: u32) -> Self
pub fn push_napi_id(self, value: u32) -> Self
ID of the NAPI instance which services this queue.
Sourcepub fn push_dmabuf(self, value: u32) -> Self
pub fn push_dmabuf(self, value: u32) -> Self
ID of the dmabuf attached to this queue, if any.
Sourcepub fn nested_io_uring(self) -> PushIoUringProviderInfo<Self>
pub fn nested_io_uring(self) -> PushIoUringProviderInfo<Self>
io_uring memory provider information.
Sourcepub fn nested_xsk(self) -> PushXskInfo<Self>
pub fn nested_xsk(self) -> PushXskInfo<Self>
XSK information for this queue, if any.
Sourcepub fn nested_lease(self) -> PushLease<Self>
pub fn nested_lease(self) -> PushLease<Self>
A queue from a virtual device can have a lease which refers to another queue from a physical device. This is useful for memory providers and AF_XDP operations which take an ifindex and queue id to allow applications to bind against virtual devices in containers.