/* per-core state */
struct guest_info {
+ char exec_name[256];
+
uint64_t rip;
uint_t cpl;
struct v3_sym_core_state sym_core_state;
#endif
+ /* Per-core config tree data. */
+ v3_cfg_tree_t * core_cfg_data;
struct v3_vm_info * vm_info;
+ v3_core_operating_mode_t core_run_state;
+
/* the logical cpu on which this core runs */
uint32_t cpu_id;
};
/* shared state across cores */
struct v3_vm_info {
+ char name[128];
+
v3_vm_class_t vm_class;
addr_t mem_size; /* In bytes for now */
uint64_t yield_cycle_period;
- int num_cores;
- struct guest_info cores[0];
-
void * host_priv_data;
+ int num_cores;
+
+ // JRL: This MUST be the last entry...
+ struct guest_info cores[0];
};
int v3_init_vm(struct v3_vm_info * vm);