#[non_exhaustive]pub struct FailureDumpFdArray {
pub populated: u32,
pub scanned: u32,
pub indices: Vec<u32>,
pub truncated: bool,
pub indices_truncated: bool,
pub unreadable: u32,
}Expand description
Per-FD-array snapshot of populated indices.
FD-array families store void * slots in bpf_array.ptrs; each
slot is either NULL (empty) or a kernel pointer (struct bpf_prog *,
struct file *, etc.). The dump path reads up to
MAX_FD_ARRAY_SLOTS slots, counts non-zero, and lists the
populated indices.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.populated: u32Number of populated (non-zero) slots seen.
scanned: u32Total slots scanned. Capped at MAX_FD_ARRAY_SLOTS.
indices: Vec<u32>Indices of populated slots. Truncated to
MAX_FD_ARRAY_INDICES entries.
truncated: boolTrue when iteration capped at MAX_FD_ARRAY_SLOTS and
scanned < max_entries.
indices_truncated: boolTrue when populated > indices.len() because
MAX_FD_ARRAY_INDICES capped the index list.
unreadable: u32Count of scanned slots whose KVA could not be translated to a
guest physical address (an unmapped page in the ptrs flex
array). These slots are neither confirmed empty nor counted
as populated, so populated is a lower bound when this is
non-zero. 0 when every scanned slot was readable.
Trait Implementations§
Source§impl Clone for FailureDumpFdArray
impl Clone for FailureDumpFdArray
Source§fn clone(&self) -> FailureDumpFdArray
fn clone(&self) -> FailureDumpFdArray
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for FailureDumpFdArray
impl Debug for FailureDumpFdArray
Source§impl Default for FailureDumpFdArray
impl Default for FailureDumpFdArray
Source§fn default() -> FailureDumpFdArray
fn default() -> FailureDumpFdArray
Source§impl<'de> Deserialize<'de> for FailureDumpFdArray
impl<'de> Deserialize<'de> for FailureDumpFdArray
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for FailureDumpFdArray
impl RefUnwindSafe for FailureDumpFdArray
impl Send for FailureDumpFdArray
impl Sync for FailureDumpFdArray
impl Unpin for FailureDumpFdArray
impl UnwindSafe for FailureDumpFdArray
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more