X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=palacios%2Finclude%2Fpalacios%2Fvm_guest.h;h=86a1cc46b5d51858bcb4fc7d2d85700b26f21278;hp=bbfc22d77d8a12c2b7e7451b3a9c56d2106e6901;hb=c06413341bf1dca02f22c0502fa5c2d1c2c11eab;hpb=82b8b87c344fcd1eab22e3f3be5ad54cbb3f8f68 diff --git a/palacios/include/palacios/vm_guest.h b/palacios/include/palacios/vm_guest.h index bbfc22d..86a1cc4 100644 --- a/palacios/include/palacios/vm_guest.h +++ b/palacios/include/palacios/vm_guest.h @@ -32,9 +32,17 @@ #include #include #include -#include #include +#include +#include +#ifdef CONFIG_TELEMETRY +#include +#endif + +#ifdef CONFIG_SYMBIOTIC_SWAP +#include +#endif struct v3_gprs { @@ -111,10 +119,13 @@ struct v3_segments { struct shadow_page_state; struct v3_intr_state; -#ifdef CONFIG_PROFILE_VMM -struct v3_profiler; +#ifdef CONFIG_TELEMETRY +struct v3_telemetry; #endif +#ifdef CONFIG_SYMBIOTIC_SWAP +struct v3_sym_swap_state; +#endif struct guest_info { @@ -144,6 +155,11 @@ struct guest_info { struct v3_msr_map msr_map; + struct v3_cpuid_map cpuid_map; + + // Symbiotic state + struct v3_sym_state sym_state; + v3_hypercall_map_t hcall_map; @@ -168,13 +184,22 @@ struct guest_info { uint64_t yield_cycle_period; uint64_t yield_start_cycle; + uint64_t num_exits; -#ifdef CONFIG_PROFILE_VMM - uint_t enable_profiler; - struct v3_profiler profiler; +#ifdef CONFIG_TELEMETRY + uint_t enable_telemetry; + struct v3_telemetry_state telemetry; +#endif + + +#ifdef CONFIG_SYMBIOTIC_SWAP + struct v3_sym_swap_state swap_state; #endif void * decoder_state; + + // the logical cpu this guest context is executing on + int cpu_id; }; @@ -195,6 +220,4 @@ void v3_print_GPRs(struct guest_info * info); #endif // ! __V3VEE__ - - #endif