git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1426 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
58 lines
1.4 KiB
Protocol Buffer
58 lines
1.4 KiB
Protocol Buffer
message EcosKernelTestProtoMsg {
|
|
// Input: experiment parameters
|
|
// (client executes 8 experiments, one for each bit at mem_addr)
|
|
|
|
// FI at #instructions from experiment start
|
|
required int32 instr_offset = 1;
|
|
// the exact IP value at this point in time (from golden run)
|
|
optional int32 instr_address = 2; // for sanity checks
|
|
// address of the byte to inject bit-flips
|
|
required int32 mem_addr = 3;
|
|
|
|
// ----------------------------------------------------
|
|
|
|
// Output: experiment results
|
|
|
|
// IP where we did the injection: for debugging purposes, must be identical
|
|
// to instr_address
|
|
optional int32 injection_ip = 4;
|
|
|
|
repeated group Result = 5 {
|
|
// single experiment bit offset
|
|
required int32 bit_offset = 1;
|
|
|
|
// result type:
|
|
// FINISHED = planned number of instructions were executed
|
|
// TRAP = premature guest "crash"
|
|
// OUTSIDE = IP left text segment
|
|
enum ResultType {
|
|
FINISHED = 1;
|
|
TRAP = 2;
|
|
OUTSIDE = 3;
|
|
DETECTED = 4;
|
|
TIMEOUT = 5;
|
|
UNKNOWN = 6;
|
|
}
|
|
required ResultType resulttype = 2;
|
|
|
|
// especially interesting for TRAP/UNKNOWN: latest IP
|
|
required uint32 latest_ip = 3;
|
|
|
|
// test results
|
|
enum EcosTestResultType {
|
|
PASS = 1;
|
|
FAIL = 2;
|
|
}
|
|
required EcosTestResultType ecos_test_result = 4;
|
|
|
|
// was finish() ever reached?
|
|
optional bool finish_reached = 5;
|
|
|
|
// did ECC correct the fault?
|
|
optional int32 error_corrected = 6;
|
|
|
|
// optional textual description of what happened
|
|
optional string details = 7;
|
|
}
|
|
}
|