X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvm_guest_mem.c;h=810be79b589829909d7371193eb4fbd874f45433;hb=c30d1b88a60c3a8df426ce81553675bbe4afef52;hp=9a7fe63cca38c7029602292aeeab90e7e009ba99;hpb=14fa18cc54571eaa7aaa0f7d55677bdb4dad81a6;p=palacios.git diff --git a/palacios/src/palacios/vm_guest_mem.c b/palacios/src/palacios/vm_guest_mem.c index 9a7fe63..810be79 100644 --- a/palacios/src/palacios/vm_guest_mem.c +++ b/palacios/src/palacios/vm_guest_mem.c @@ -21,6 +21,11 @@ #include #include +#ifndef V3_CONFIG_DEBUG_MEM_ERRORS +#undef PrintDebug +#define PrintDebug(fmt, args...) +#endif + extern struct v3_os_hooks * os_hooks; @@ -34,12 +39,12 @@ int v3_hva_to_hpa(addr_t hva, addr_t * hpa) { *hpa = (addr_t)(os_hooks)->vaddr_to_paddr((void *)hva); if (*hpa == 0) { - PrintError("In HVA->HPA: Invalid HVA(%p)->HPA lookup\n", + PrintDebug("In HVA->HPA: Invalid HVA(%p)->HPA lookup\n", (void *)hva); return -1; } } else { - PrintError("In HVA->HPA: os_hooks not defined\n"); + PrintDebug("In HVA->HPA: os_hooks not defined\n"); return -1; } return 0; @@ -52,29 +57,30 @@ int v3_hpa_to_hva(addr_t hpa, addr_t * hva) { *hva = (addr_t)(os_hooks)->paddr_to_vaddr((void *)hpa); if (*hva == 0) { - PrintError("In HPA->HVA: Invalid HPA(%p)->HVA lookup\n", + PrintDebug("In HPA->HVA: Invalid HPA(%p)->HVA lookup\n", (void *)hpa); return -1; } } else { - PrintError("In HPA->HVA: os_hooks not defined\n"); + PrintDebug("In HPA->HVA: os_hooks not defined\n"); return -1; } return 0; } int v3_gpa_to_hpa(struct guest_info * info, addr_t gpa, addr_t * hpa) { - struct v3_mem_region * reg = v3_get_mem_region(info->vm_info, info->cpu_id, gpa); + struct v3_mem_region * reg = v3_get_mem_region(info->vm_info, info->vcpu_id, gpa); if (reg == NULL) { - PrintError("In GPA->HPA: Could not find address in shadow map (addr=%p) (NULL REGION)\n", + PrintDebug("In GPA->HPA: Could not find address in shadow map (addr=%p) (NULL REGION)\n", (void *)gpa); return -1; } if (reg->flags.alloced == 0) { - PrintError("In GPA->HPA: Tried to translate physical address of non allocated page (addr=%p)\n", - (void *)gpa); + //PrintDebug("In GPA->HPA: Tried to translate physical address of non allocated page (addr=%p)\n", + // (void *)gpa); + //v3_print_mem_map(info->vm_info); return -1; } @@ -90,7 +96,7 @@ int v3_gpa_to_hpa(struct guest_info * info, addr_t gpa, addr_t * hpa) { // int v3_hpa_to_gpa(struct guest_info * guest_info, addr_t hpa, addr_t * gpa) { *gpa = 0; - PrintError("ERROR!!! HPA->GPA currently not implemented!!!\n"); + PrintDebug("ERROR!!! HPA->GPA currently not implemented!!!\n"); return -1; } @@ -109,13 +115,13 @@ int v3_hva_to_gpa(struct guest_info * guest_info, addr_t hva, addr_t * gpa) { *gpa = 0; if (v3_hva_to_hpa(hva, &hpa) != 0) { - PrintError("In HVA->GPA: Invalid HVA(%p)->HPA lookup\n", + PrintDebug("In HVA->GPA: Invalid HVA(%p)->HPA lookup\n", (void *)hva); return -1; } if (v3_hpa_to_gpa(guest_info, hpa, gpa) != 0) { - PrintError("In HVA->GPA: Invalid HPA(%p)->GPA lookup\n", + PrintDebug("In HVA->GPA: Invalid HPA(%p)->GPA lookup\n", (void *)hpa); return -1; } @@ -132,13 +138,13 @@ int v3_gpa_to_hva(struct guest_info * guest_info, addr_t gpa, addr_t * hva) { *hva = 0; if (v3_gpa_to_hpa(guest_info, gpa, &hpa) != 0) { - PrintError("In GPA->HVA: Invalid GPA(%p)->HPA lookup\n", - (void *)gpa); + // PrintDebug("In GPA->HVA: Invalid GPA(%p)->HPA lookup\n", + // (void *)gpa); return -1; } if (v3_hpa_to_hva(hpa, hva) != 0) { - PrintError("In GPA->HVA: Invalid HPA(%p)->HVA lookup\n", + PrintDebug("In GPA->HVA: Invalid HPA(%p)->HVA lookup\n", (void *)hpa); return -1; } @@ -204,7 +210,7 @@ int v3_gva_to_gpa(struct guest_info * guest_info, addr_t gva, addr_t * gpa) { */ int v3_gpa_to_gva(struct guest_info * guest_info, addr_t gpa, addr_t * gva) { *gva = 0; - PrintError("ERROR!!: GPA->GVA Not Implemented!!\n"); + PrintDebug("ERROR!!: GPA->GVA Not Implemented!!\n"); return -1; } @@ -220,13 +226,13 @@ int v3_gva_to_hpa(struct guest_info * guest_info, addr_t gva, addr_t * hpa) { *hpa = 0; if (v3_gva_to_gpa(guest_info, gva, &gpa) != 0) { - PrintError("In GVA->HPA: Invalid GVA(%p)->GPA lookup\n", + PrintDebug("In GVA->HPA: Invalid GVA(%p)->GPA lookup\n", (void *)gva); return -1; } if (v3_gpa_to_hpa(guest_info, gpa, hpa) != 0) { - PrintError("In GVA->HPA: Invalid GPA(%p)->HPA lookup\n", + PrintDebug("In GVA->HPA: Invalid GPA(%p)->HPA lookup\n", (void *)gpa); return -1; } @@ -241,13 +247,13 @@ int v3_hpa_to_gva(struct guest_info * guest_info, addr_t hpa, addr_t * gva) { *gva = 0; if (v3_hpa_to_gpa(guest_info, hpa, &gpa) != 0) { - PrintError("In HPA->GVA: Invalid HPA(%p)->GPA lookup\n", + PrintDebug("In HPA->GVA: Invalid HPA(%p)->GPA lookup\n", (void *)hpa); return -1; } if (v3_gpa_to_gva(guest_info, gpa, gva) != 0) { - PrintError("In HPA->GVA: Invalid GPA(%p)->GVA lookup\n", + PrintDebug("In HPA->GVA: Invalid GPA(%p)->GVA lookup\n", (void *)gpa); return -1; } @@ -265,19 +271,19 @@ int v3_gva_to_hva(struct guest_info * guest_info, addr_t gva, addr_t * hva) { *hva = 0; if (v3_gva_to_gpa(guest_info, gva, &gpa) != 0) { - PrintError("In GVA->HVA: Invalid GVA(%p)->GPA lookup\n", + PrintDebug("In GVA->HVA: Invalid GVA(%p)->GPA lookup\n", (void *)gva); return -1; } if (v3_gpa_to_hpa(guest_info, gpa, &hpa) != 0) { - PrintError("In GVA->HVA: Invalid GPA(%p)->HPA lookup\n", + PrintDebug("In GVA->HVA: Invalid GPA(%p)->HPA lookup\n", (void *)gpa); return -1; } if (v3_hpa_to_hva(hpa, hva) != 0) { - PrintError("In GVA->HVA: Invalid HPA(%p)->HVA lookup\n", + PrintDebug("In GVA->HVA: Invalid HPA(%p)->HVA lookup\n", (void *)hpa); return -1; } @@ -294,19 +300,19 @@ int v3_hva_to_gva(struct guest_info * guest_info, addr_t hva, addr_t * gva) { *gva = 0; if (v3_hva_to_hpa(hva, &hpa) != 0) { - PrintError("In HVA->GVA: Invalid HVA(%p)->HPA lookup\n", + PrintDebug("In HVA->GVA: Invalid HVA(%p)->HPA lookup\n", (void *)hva); return -1; } if (v3_hpa_to_gpa(guest_info, hpa, &gpa) != 0) { - PrintError("In HVA->GVA: Invalid HPA(%p)->GPA lookup\n", + PrintDebug("In HVA->GVA: Invalid HPA(%p)->GPA lookup\n", (void *)hva); return -1; } if (v3_gpa_to_gva(guest_info, gpa, gva) != 0) { - PrintError("In HVA->GVA: Invalid GPA(%p)->GVA lookup\n", + PrintDebug("In HVA->GVA: Invalid GPA(%p)->GVA lookup\n", (void *)gpa); return -1; }