PushOpPagePoolGetDoReply

Struct PushOpPagePoolGetDoReply 

Source
pub struct PushOpPagePoolGetDoReply<Prev: Rec> { /* private fields */ }
Available on crate feature netdev only.
Expand description

Get / dump information about Page Pools. (Only Page Pools associated with a net_device can be listed.)

Implementations§

Source§

impl<Prev: Rec> PushOpPagePoolGetDoReply<Prev>

Source

pub fn new(prev: Prev) -> Self

Source

pub fn end_nested(self) -> Prev

Source

pub fn push_id(self, value: u32) -> Self

Unique ID of a Page Pool instance.

Source

pub fn push_ifindex(self, value: u32) -> Self

ifindex of the netdev to which the pool belongs. May be reported as 0 if the page pool was allocated for a netdev which got destroyed already (page pools may outlast their netdevs because they wait for all memory to be returned).

Source

pub fn push_napi_id(self, value: u32) -> Self

Id of NAPI using this Page Pool instance.

Source

pub fn push_inflight(self, value: u32) -> Self

Number of outstanding references to this page pool (allocated but yet to be freed pages). Allocated pages may be held in socket receive queues, driver receive ring, page pool recycling ring, the page pool cache, etc.

Source

pub fn push_inflight_mem(self, value: u32) -> Self

Amount of memory held by inflight pages.

Source

pub fn push_detach_time(self, value: u32) -> Self

Seconds in CLOCK_BOOTTIME of when Page Pool was detached by the driver. Once detached Page Pool can no longer be used to allocate memory. Page Pools wait for all the memory allocated from them to be freed before truly disappearing. “Detached” Page Pools cannot be “re-attached”, they are just waiting to disappear. Attribute is absent if Page Pool has not been detached, and can still be used to allocate new memory.

Source

pub fn push_dmabuf(self, value: u32) -> Self

ID of the dmabuf this page-pool is attached to.

Source

pub fn nested_io_uring(self) -> PushIoUringProviderInfo<Self>

io-uring memory provider information.

Trait Implementations§

Source§

impl<Prev: Rec> Drop for PushOpPagePoolGetDoReply<Prev>

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl<Prev: Rec> Rec for PushOpPagePoolGetDoReply<Prev>

Source§

fn as_rec_mut(&mut self) -> &mut Vec<u8>

Auto Trait Implementations§

§

impl<Prev> Freeze for PushOpPagePoolGetDoReply<Prev>
where Prev: Freeze,

§

impl<Prev> RefUnwindSafe for PushOpPagePoolGetDoReply<Prev>
where Prev: RefUnwindSafe,

§

impl<Prev> Send for PushOpPagePoolGetDoReply<Prev>
where Prev: Send,

§

impl<Prev> Sync for PushOpPagePoolGetDoReply<Prev>
where Prev: Sync,

§

impl<Prev> Unpin for PushOpPagePoolGetDoReply<Prev>
where Prev: Unpin,

§

impl<Prev> UnwindSafe for PushOpPagePoolGetDoReply<Prev>
where Prev: UnwindSafe,

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.

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.

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.