pub enum ControllerRequest {
Setup {
device_label: String,
device_path: Option<String>,
seed: u64,
responder: ControllerSetupResponder,
},
Test {
device_label: String,
device_path: Option<String>,
seed: u64,
duration: u64,
responder: ControllerTestResponder,
},
Verify {
device_label: String,
device_path: Option<String>,
seed: u64,
responder: ControllerVerifyResponder,
},
}
Expand description
Protocol to control the target-side component of power failure tests for the filesystems.
Variants§
Setup
Run the setup step for this test. Often, this involves formatting the filesystem of choice onto the block device, and perhaps setting up a base of files to work with.
Fields
responder: ControllerSetupResponder
Test
Run the test step for this test. This kicks off the load generation algorithm for this test, which will run indefinitely. It’s expected that this load will be interrupted by a power cycle. If the provided duration is non-zero, this protocol will return after approximately that amount of time, but the load will continue to run. If the duration provided is zero, then the test will return when it’s done, which for a lot of normal blackout tests might be never.
Fields
responder: ControllerTestResponder
Verify
Run the verify step for this test. Most of the time it involves running fsck on the block device and returning the result.
Implementations§
Source§impl ControllerRequest
impl ControllerRequest
pub fn into_setup( self, ) -> Option<(String, Option<String>, u64, ControllerSetupResponder)>
pub fn into_test( self, ) -> Option<(String, Option<String>, u64, u64, ControllerTestResponder)>
pub fn into_verify( self, ) -> Option<(String, Option<String>, u64, ControllerVerifyResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL