X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_symbiotic.c;h=3b41305564beb1a377ecfaf068980b4129049c19;hb=e02cc15e36e8f5d7ee66390986351748dd9a16a1;hp=c8943f0d59b644b6ce7cf1b28e7286504da8cbc0;hpb=ee1279646a778613b23a42350b903ebb57c068f8;p=palacios-OLD.git diff --git a/palacios/src/palacios/vmm_symbiotic.c b/palacios/src/palacios/vmm_symbiotic.c index c8943f0..3b41305 100644 --- a/palacios/src/palacios/vmm_symbiotic.c +++ b/palacios/src/palacios/vmm_symbiotic.c @@ -32,11 +32,11 @@ static int cpuid_fn(struct guest_info * core, uint32_t cpuid, *eax = *(uint32_t *)"V3V"; - if ((v3_cpu_types[core->cpu_id] == V3_SVM_CPU) || - (v3_cpu_types[core->cpu_id] == V3_SVM_REV3_CPU)) { + if ((v3_cpu_types[core->host_cpu_id] == V3_SVM_CPU) || + (v3_cpu_types[core->host_cpu_id] == V3_SVM_REV3_CPU)) { *ebx = *(uint32_t *)"SVM"; - } else if ((v3_cpu_types[core->cpu_id] == V3_VMX_CPU) || - (v3_cpu_types[core->cpu_id] == V3_VMX_EPT_CPU)) { + } else if ((v3_cpu_types[core->host_cpu_id] == V3_VMX_CPU) || + (v3_cpu_types[core->host_cpu_id] == V3_VMX_EPT_CPU)) { *ebx = *(uint32_t *)"VMX"; } @@ -64,10 +64,29 @@ int v3_init_symbiotic_vm(struct v3_vm_info * vm) { #endif #ifdef CONFIG_SYMMOD + if (v3_init_symmod_vm(vm, vm->cfg_data->cfg) == -1) { + PrintError("Error initializing global SymMod state\n"); + return -1; + } +#endif + + + return 0; +} + + +int v3_deinit_symbiotic_vm(struct v3_vm_info * vm) { +#ifdef CONFIG_SYMMOD + if (v3_deinit_symmod_vm(vm) == -1) { + PrintError("Error deinitializing global SymMod state\n"); + return -1; + } #endif + v3_unhook_cpuid(vm, SYM_CPUID_NUM); + return 0; } @@ -85,3 +104,9 @@ int v3_init_symbiotic_core(struct guest_info * core) { return 0; } + + +int v3_deinit_symbiotic_core(struct guest_info * core) { + + return 0; +}