pub struct VerifierCellRecord {
pub scheduler: String,
pub kernel: String,
pub topology: String,
pub passed: bool,
pub stats: Vec<ProgStats>,
}Expand description
One cargo ktstr verifier cell’s outcome. The cell process writes it
(via write_cell_record) into the directory named by
crate::KTSTR_VERIFIER_RESULT_DIR_ENV; after nextest returns the
dispatcher reads them back (via read_cell_records) and renders the
per-(topology × scheduler) summary table. A cell is one
(scheduler, kernel, topology): the verifier sweeps each declared
scheduler across topologies, so topology IS a result axis — a
scheduler can pass on one topology and fail on another.
Fields§
§scheduler: StringDeclared scheduler name (the <sched> cell-name segment).
kernel: StringSanitized kernel label (the <kernel> cell-name segment).
topology: StringGauntlet topology preset (the <preset> cell-name segment).
passed: boolWhether the cell passed (exit 0 from the cell handler).
stats: Vec<ProgStats>Per-program stats (program name + its verified_insns count)
captured for this cell, copied from the VM run’s
VerifierVmResult::stats. Empty when the cell failed before
producing stats. Drives the per-scheduler verified_insns tables
(render_instruction_count_tables, rows = kernel, cols = BPF
program, cell = the count summarized across topologies) that the
dispatcher prints before the PASS/FAIL grid.
Trait Implementations§
Source§impl Clone for VerifierCellRecord
impl Clone for VerifierCellRecord
Source§fn clone(&self) -> VerifierCellRecord
fn clone(&self) -> VerifierCellRecord
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for VerifierCellRecord
impl Debug for VerifierCellRecord
Source§impl<'de> Deserialize<'de> for VerifierCellRecord
impl<'de> Deserialize<'de> for VerifierCellRecord
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>,
Source§impl PartialEq for VerifierCellRecord
impl PartialEq for VerifierCellRecord
Source§impl Serialize for VerifierCellRecord
impl Serialize for VerifierCellRecord
impl Eq for VerifierCellRecord
impl StructuralPartialEq for VerifierCellRecord
Auto Trait Implementations§
impl Freeze for VerifierCellRecord
impl RefUnwindSafe for VerifierCellRecord
impl Send for VerifierCellRecord
impl Sync for VerifierCellRecord
impl Unpin for VerifierCellRecord
impl UnwindSafe for VerifierCellRecord
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§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