X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_mem.c;h=6bb9f5afe0dca884c2a7fbc68751f813fa49cd4a;hb=9cf92dd87164a7d263f65b09eefde2672df93f63;hp=c43dcae3c4063ff075f0171d48fdf8c98bdaf092;hpb=83bd28a67ecaaa7dfd9db4c459485cf8af07d4a5;p=palacios-OLD.git diff --git a/palacios/src/palacios/vmm_mem.c b/palacios/src/palacios/vmm_mem.c index c43dcae..6bb9f5a 100644 --- a/palacios/src/palacios/vmm_mem.c +++ b/palacios/src/palacios/vmm_mem.c @@ -41,7 +41,8 @@ static int mem_offset_hypercall(struct guest_info * info, uint_t hcall_id, void static int unhandled_err(struct guest_info * core, addr_t guest_va, addr_t guest_pa, struct v3_mem_region * reg, pf_error_t access_info) { - PrintError("Unhandled memory access error\n"); + PrintError("Unhandled memory access error (gpa=%p, gva=%p, error_code=%d)\n", + (void *)guest_pa, (void *)guest_va, *(uint32_t *)&access_info); v3_print_mem_map(core->vm_info); @@ -65,7 +66,7 @@ int v3_init_mem_map(struct v3_vm_info * vm) { map->base_region.guest_start = 0; map->base_region.guest_end = mem_pages * PAGE_SIZE_4KB; -#ifdef CONFIG_ALIGNED_PG_ALLOC +#ifdef V3_CONFIG_ALIGNED_PG_ALLOC map->base_region.host_addr = (addr_t)V3_AllocAlignedPages(mem_pages, vm->mem_align); #else map->base_region.host_addr = (addr_t)V3_AllocPages(mem_pages); @@ -477,7 +478,7 @@ uint32_t v3_get_max_page_size(struct guest_info * core, addr_t page_addr, v3_cpu pg_start = PAGE_ADDR_4MB(page_addr); pg_end = (pg_start + PAGE_SIZE_4MB); - reg = get_overlapping_region(core->vm_info, core->cpu_id, pg_start, pg_end); + reg = get_overlapping_region(core->vm_info, core->vcpu_id, pg_start, pg_end); if ((reg) && ((reg->host_addr % PAGE_SIZE_4MB) == 0)) { page_size = PAGE_SIZE_4MB; @@ -489,7 +490,7 @@ uint32_t v3_get_max_page_size(struct guest_info * core, addr_t page_addr, v3_cpu pg_start = PAGE_ADDR_2MB(page_addr); pg_end = (pg_start + PAGE_SIZE_2MB); - reg = get_overlapping_region(core->vm_info, core->cpu_id, pg_start, pg_end); + reg = get_overlapping_region(core->vm_info, core->vcpu_id, pg_start, pg_end); if ((reg) && ((reg->host_addr % PAGE_SIZE_2MB) == 0)) { page_size = PAGE_SIZE_2MB; @@ -503,7 +504,7 @@ uint32_t v3_get_max_page_size(struct guest_info * core, addr_t page_addr, v3_cpu pg_start = PAGE_ADDR_1GB(page_addr); pg_end = (pg_start + PAGE_SIZE_1GB); - reg = get_overlapping_region(core->vm_info, core->cpu_id, pg_start, pg_end); + reg = get_overlapping_region(core->vm_info, core->vcpu_id, pg_start, pg_end); if ((reg) && ((reg->host_addr % PAGE_SIZE_1GB) == 0)) { page_size = PAGE_SIZE_1GB; @@ -515,7 +516,7 @@ uint32_t v3_get_max_page_size(struct guest_info * core, addr_t page_addr, v3_cpu pg_start = PAGE_ADDR_2MB(page_addr); pg_end = (pg_start + PAGE_SIZE_2MB); - reg = get_overlapping_region(core->vm_info, core->cpu_id, pg_start, pg_end); + reg = get_overlapping_region(core->vm_info, core->vcpu_id, pg_start, pg_end); if ((reg) && ((reg->host_addr % PAGE_SIZE_2MB) == 0)) { page_size = PAGE_SIZE_2MB;