X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmx_ept.c;h=d239bd2fe7107a8d59785d549c6638cd8e5ccc59;hb=7ca1f3f6bcb065c7c28b98f049d4abbca21a7bc1;hp=bf1ab86dd4ddbd4f3dd674e40ab0c9486428265d;hpb=fcc9962fe5d3b877f8f25de8745d0d4d1eaf394e;p=palacios.git diff --git a/palacios/src/palacios/vmx_ept.c b/palacios/src/palacios/vmx_ept.c index bf1ab86..d239bd2 100644 --- a/palacios/src/palacios/vmx_ept.c +++ b/palacios/src/palacios/vmx_ept.c @@ -27,8 +27,15 @@ static struct vmx_ept_msr * ept_info = NULL; static addr_t create_ept_page() { + void * temp; void * page = 0; - page = V3_VAddr(V3_AllocPages(1)); + + temp = V3_AllocPages(1); + if (!temp) { + PrintError("Cannot allocate EPT page\n"); + return 0; + } + page = V3_VAddr(temp); memset(page, 0, PAGE_SIZE); return (addr_t)page; @@ -77,7 +84,7 @@ int v3_handle_ept_fault(struct guest_info * core, addr_t fault_addr, struct ept_ int pde_index = PDE64_INDEX(fault_addr); int pte_index = PTE64_INDEX(fault_addr); - struct v3_mem_region * region = v3_get_mem_region(core->vm_info, core->cpu_id, fault_addr); + struct v3_mem_region * region = v3_get_mem_region(core->vm_info, core->vcpu_id, fault_addr); int page_size = PAGE_SIZE_4KB;