Files
fail/core/experiments/weathermonitor/weathermonitor.proto
2012-04-17 13:30:04 +00:00

43 lines
1.1 KiB
Protocol Buffer

message WeathermonitorProtoMsg {
// Input: experiment parameters
required int32 instr_offset = 1;
optional int32 instr_address = 2; // for sanity checks
required int32 mem_addr = 3;
required int32 bit_offset = 4;
// ----------------------------------------------------
// Output: experiment results
// (make these optional to reduce overhead for server->client communication)
// instruction pointer where injection was done
optional uint32 injection_ip = 5;
// result type:
// FINISHED = planned number of instructions were executed
// TRAP = premature guest "crash"
enum ResultType {
FINISHED = 1;
TRAP = 2;
HALT = 3;
UNKNOWN = 4;
}
optional ResultType resulttype = 6;
// result details:
// resultdata = result[0-2]
repeated uint32 resultdata = 7 [packed=true];
// was finish() ever reached?
optional bool finish_reached = 8;
// especially interesting for TRAP/ UNKNOWN: latest IP
optional uint32 latest_ip = 9;
// did ECC correct the fault?
optional int32 error_corrected = 10;
// optional textual description of what happened
optional string details = 11;
}