// We double cast, first to an addr_t to handle 64 bit issues, then to the pointer
PrintDebug("Deleting PT Page %d (%p)\n", i, (void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[i].pt_base_addr));
- V3_FreePage((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[i].pt_base_addr));
+ V3_FreePages((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[i].pt_base_addr), 1);
}
}
- V3_FreePage(V3_PAddr(pde));
+ V3_FreePages(V3_PAddr(pde), 1);
}
void delete_page_tables_32pae(pdpe32pae_t * pdpe) {
continue;
}
- V3_FreePage((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[j].pt_base_addr));
+ V3_FreePages((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[j].pt_base_addr), 1);
}
- V3_FreePage(V3_PAddr(pde));
+ V3_FreePages(V3_PAddr(pde), 1);
}
- V3_FreePage(V3_PAddr(pdpe));
+ V3_FreePages(V3_PAddr(pdpe), 1);
}
void delete_page_tables_64(pml4e64_t * pml4) {
continue;
}
- V3_FreePage((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[k].pt_base_addr));
+ V3_FreePages((void *)(addr_t)BASE_TO_PAGE_ADDR_4KB(pde[k].pt_base_addr), 1);
}
- V3_FreePage(V3_PAddr(pde));
+ V3_FreePages(V3_PAddr(pde), 1);
}
- V3_FreePage(V3_PAddr(pdpe));
+ V3_FreePages(V3_PAddr(pdpe), 1);
}
- V3_FreePage(V3_PAddr(pml4));
+ V3_FreePages(V3_PAddr(pml4), 1);
}
int ret;
- if (guest_pa_to_host_va(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
+ if (v3_gpa_to_hva(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
PrintError("Could not get virtual address of Guest PDE32 (PA=%p)\n",
(void *)guest_pde_pa);
return -1;
addr_t large_page_pa = (addr_t)guest_pte_pa;
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintError("Could not get virtual address of Guest Page 4MB (PA=%p)\n",
(void *)large_page_va);
return -1;
pte32_t * guest_pte = NULL;
addr_t page_pa;
- if (guest_pa_to_host_va(info, guest_pte_pa, (addr_t*)&guest_pte) == -1) {
+ if (v3_gpa_to_hva(info, guest_pte_pa, (addr_t*)&guest_pte) == -1) {
PrintError("Could not get virtual address of Guest PTE32 (PA=%p)\n",
(void *)guest_pte_pa);
return -1;
} else {
addr_t page_va;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintError("Could not get virtual address of Guest Page 4KB (PA=%p)\n",
(void *)page_pa);
return -1;
addr_t guest_pde_pa = 0;
int ret = 0;
- if (guest_pa_to_host_va(info, guest_pdpe_pa, (addr_t*)&guest_pdpe) == -1) {
+ if (v3_gpa_to_hva(info, guest_pdpe_pa, (addr_t*)&guest_pdpe) == -1) {
PrintError("Could not get virtual address of Guest PDPE32PAE (PA=%p)\n",
(void *)guest_pdpe_pa);
return -1;
pde32pae_t * guest_pde = NULL;
addr_t guest_pte_pa = 0;
- if (guest_pa_to_host_va(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
+ if (v3_gpa_to_hva(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
PrintError("Could not get virtual Address of Guest PDE32PAE (PA=%p)\n",
(void *)guest_pde_pa);
return -1;
addr_t large_page_pa = (addr_t)guest_pte_pa;
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest Page 2MB (PA=%p)\n",
(void *)large_page_va);
pte32pae_t * guest_pte = NULL;
addr_t page_pa;
- if (guest_pa_to_host_va(info, guest_pte_pa, (addr_t *)&guest_pte) == -1) {
+ if (v3_gpa_to_hva(info, guest_pte_pa, (addr_t *)&guest_pte) == -1) {
PrintError("Could not get virtual Address of Guest PTE32PAE (PA=%p)\n",
(void *)guest_pte_pa);
return -1;
} else {
addr_t page_va;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintError("Could not get virtual address of Guest Page 4KB (PA=%p)\n",
(void *)page_pa);
return -1;
addr_t guest_pdpe_pa = 0;
int ret = 0;
- if (guest_pa_to_host_va(info, guest_pml4_pa, (addr_t*)&guest_pmle) == -1) {
+ if (v3_gpa_to_hva(info, guest_pml4_pa, (addr_t*)&guest_pmle) == -1) {
PrintError("Could not get virtual address of Guest PML4E64 (PA=%p)\n",
(void *)guest_pml4_pa);
return -1;
pdpe64_t * guest_pdp = NULL;
addr_t guest_pde_pa = 0;
- if (guest_pa_to_host_va(info, guest_pdpe_pa, (addr_t *)&guest_pdp) == -1) {
+ if (v3_gpa_to_hva(info, guest_pdpe_pa, (addr_t *)&guest_pdp) == -1) {
PrintError("Could not get virtual address of Guest PDPE64 (PA=%p)\n",
(void *)guest_pdpe_pa);
return -1;
addr_t large_page_pa = (addr_t)guest_pde_pa;
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest Page 1GB (PA=%p)\n",
(void *)large_page_va);
pde64_t * guest_pde = NULL;
addr_t guest_pte_pa = 0;
- if (guest_pa_to_host_va(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
+ if (v3_gpa_to_hva(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
PrintError("Could not get virtual address of guest PDE64 (PA=%p)\n",
(void *)guest_pde_pa);
return -1;
addr_t large_page_pa = (addr_t)guest_pte_pa;
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest Page 2MB (PA=%p)\n",
(void *)large_page_va);
pte64_t * guest_pte = NULL;
addr_t page_pa;
- if (guest_pa_to_host_va(info, guest_pte_pa, (addr_t *)&guest_pte) == -1) {
+ if (v3_gpa_to_hva(info, guest_pte_pa, (addr_t *)&guest_pte) == -1) {
PrintError("Could not get virtual address of guest PTE64 (PA=%p)\n",
(void *)guest_pte_pa);
return -1;
} else {
addr_t page_va;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintError("Could not get virtual address of Guest Page 4KB (PA=%p)\n",
(void *)page_pa);
return -1;
return -1;
}
- if (guest_pa_to_host_va(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
+ if (v3_gpa_to_hva(info, guest_pde_pa, (addr_t *)&guest_pde) == -1) {
PrintError("Could not get virtual address of Guest PDE32 (PA=%p)\n",
(void *)guest_pde_pa);
return -1;
addr_t large_page_pa = BASE_TO_PAGE_ADDR_4MB(large_pde->page_base_addr);
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 4MB Page (PA=%p)\n",
(void *)large_page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
addr_t pte_pa = BASE_TO_PAGE_ADDR(guest_pde[i].pt_base_addr);
pte32_t * tmp_pte = NULL;
- if (guest_pa_to_host_va(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
+ if (v3_gpa_to_hva(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
PrintError("Could not get virtual address of Guest PTE32 (PA=%p)\n",
(void *)pte_pa);
return -1;
addr_t page_pa = BASE_TO_PAGE_ADDR(tmp_pte[j].page_base_addr);
addr_t page_va = 0;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 4KB Page (PA=%p)\n",
(void *)page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
return -1;
}
- if (guest_pa_to_host_va(info, guest_pdpe_pa, (addr_t *)&guest_pdpe) == -1) {
+ if (v3_gpa_to_hva(info, guest_pdpe_pa, (addr_t *)&guest_pdpe) == -1) {
PrintError("Could not get virtual address of Guest PDPE32PAE (PA=%p)\n",
(void *)guest_pdpe_pa);
return -1;
addr_t pde_pa = BASE_TO_PAGE_ADDR(guest_pdpe[i].pd_base_addr);
pde32pae_t * tmp_pde = NULL;
- if (guest_pa_to_host_va(info, pde_pa, (addr_t *)&tmp_pde) == -1) {
+ if (v3_gpa_to_hva(info, pde_pa, (addr_t *)&tmp_pde) == -1) {
PrintError("Could not get virtual address of Guest PDE32PAE (PA=%p)\n",
(void *)pde_pa);
return -1;
addr_t large_page_pa = BASE_TO_PAGE_ADDR_2MB(large_pde->page_base_addr);
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 2MB Page (PA=%p)\n",
(void *)large_page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
addr_t pte_pa = BASE_TO_PAGE_ADDR(tmp_pde[j].pt_base_addr);
pte32pae_t * tmp_pte = NULL;
- if (guest_pa_to_host_va(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
+ if (v3_gpa_to_hva(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
PrintError("Could not get virtual address of Guest PTE32PAE (PA=%p)\n",
(void *)pte_pa);
return -1;
addr_t page_pa = BASE_TO_PAGE_ADDR(tmp_pte[k].page_base_addr);
addr_t page_va = 0;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 4KB Page (PA=%p)\n",
(void *)page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
return -1;
}
- if (guest_pa_to_host_va(info, guest_pml_pa, (addr_t *)&guest_pml) == -1) {
+ if (v3_gpa_to_hva(info, guest_pml_pa, (addr_t *)&guest_pml) == -1) {
PrintError("Could not get virtual address of Guest PML464 (PA=%p)\n",
(void *)guest_pml);
return -1;
pdpe64_t * tmp_pdpe = NULL;
- if (guest_pa_to_host_va(info, pdpe_pa, (addr_t *)&tmp_pdpe) == -1) {
+ if (v3_gpa_to_hva(info, pdpe_pa, (addr_t *)&tmp_pdpe) == -1) {
PrintError("Could not get virtual address of Guest PDPE64 (PA=%p)\n",
(void *)pdpe_pa);
return -1;
addr_t large_page_pa = BASE_TO_PAGE_ADDR_1GB(large_pdpe->page_base_addr);
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 1GB page (PA=%p)\n",
(void *)large_page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
addr_t pde_pa = BASE_TO_PAGE_ADDR(tmp_pdpe[j].pd_base_addr);
pde64_t * tmp_pde = NULL;
- if (guest_pa_to_host_va(info, pde_pa, (addr_t *)&tmp_pde) == -1) {
+ if (v3_gpa_to_hva(info, pde_pa, (addr_t *)&tmp_pde) == -1) {
PrintError("Could not get virtual address of Guest PDE64 (PA=%p)\n",
(void *)pde_pa);
return -1;
addr_t large_page_pa = BASE_TO_PAGE_ADDR_2MB(large_pde->page_base_addr);
addr_t large_page_va = 0;
- if (guest_pa_to_host_va(info, large_page_pa, &large_page_va) == -1) {
+ if (v3_gpa_to_hva(info, large_page_pa, &large_page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 2MB page (PA=%p)\n",
(void *)large_page_pa);
// We'll let it through for data pages because they may be unmapped or hooked
addr_t pte_pa = BASE_TO_PAGE_ADDR(tmp_pde[k].pt_base_addr);
pte64_t * tmp_pte = NULL;
- if (guest_pa_to_host_va(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
+ if (v3_gpa_to_hva(info, pte_pa, (addr_t *)&tmp_pte) == -1) {
PrintError("Could not get virtual address of Guest PTE64 (PA=%p)\n",
(void *)pte_pa);
return -1;
addr_t page_pa = BASE_TO_PAGE_ADDR(tmp_pte[m].page_base_addr);
addr_t page_va = 0;
- if (guest_pa_to_host_va(info, page_pa, &page_va) == -1) {
+ if (v3_gpa_to_hva(info, page_pa, &page_va) == -1) {
PrintDebug("Could not get virtual address of Guest 4KB Page (PA=%p)\n",
(void *)page_pa);
// We'll let it through for data pages because they may be unmapped or hooked