X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm.c;h=5811cba38e207afb6e35606d491e916287748671;hb=fd9690bf0f032246f2d2c596e2467cccc45faff6;hp=cf0d4bd6b00bcd72c29296e8fde1fb5b7d8bcf6f;hpb=926e4e742c02e6f1255c8da243494c8bbddbf752;p=palacios.git diff --git a/palacios/src/palacios/vmm.c b/palacios/src/palacios/vmm.c index cf0d4bd..5811cba 100644 --- a/palacios/src/palacios/vmm.c +++ b/palacios/src/palacios/vmm.c @@ -33,6 +33,10 @@ #include #endif +#ifdef CONFIG_VNET +#include +#endif + v3_cpu_arch_t v3_cpu_types[CONFIG_MAX_CPUS]; struct v3_os_hooks * os_hooks = NULL; @@ -83,10 +87,20 @@ void Init_V3(struct v3_os_hooks * hooks, int num_cpus) { // Register all shadow paging handlers V3_init_shdw_paging(); -#ifdef INSTRUMENT_VMM + +#ifdef CONFIG_SYMMOD + V3_init_symmod(); +#endif + +#ifdef CONFIG_INSTRUMENT_VMM v3_init_instrumentation(); #endif + +#ifdef CONFIG_VNET + V3_init_vnet(); +#endif + if ((hooks) && (hooks->call_on_cpu)) { for (i = 0; i < num_cpus; i++) { @@ -237,11 +251,11 @@ void v3_print_cond(const char * fmt, ...) { -void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu) { +void v3_interrupt_cpu(struct v3_vm_info * vm, int logical_cpu, int vector) { extern struct v3_os_hooks * os_hooks; if ((os_hooks) && (os_hooks)->interrupt_cpu) { - (os_hooks)->interrupt_cpu(vm, logical_cpu); + (os_hooks)->interrupt_cpu(vm, logical_cpu, vector); } }