summaryrefslogtreecommitdiff
path: root/i386/intel/pmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'i386/intel/pmap.c')
-rw-r--r--i386/intel/pmap.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index 0b8ae903..9f34f2d7 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -155,9 +155,6 @@ boolean_t pmap_initialized = FALSE;
vm_offset_t kernel_virtual_start;
vm_offset_t kernel_virtual_end;
-/* XXX stupid fixed limit - get rid */
-vm_size_t morevm = 128 * 1024 * 1024; /* VM space for kernel map */
-
/*
* Index into pv_head table, its lock bits, and the modify/reference
* bits starting at phys_first_addr.
@@ -620,8 +617,7 @@ void pmap_bootstrap()
* and extends to a stupid arbitrary limit beyond that.
*/
kernel_virtual_start = phystokv(phys_last_addr);
- kernel_virtual_end = phystokv(phys_last_addr) + morevm
- + (phys_last_addr - phys_first_addr);
+ kernel_virtual_end = phystokv(phys_last_addr) + VM_KERNEL_MAP_SIZE;
if (kernel_virtual_end < kernel_virtual_start
|| kernel_virtual_end > VM_MAX_KERNEL_ADDRESS)
@@ -872,7 +868,7 @@ void pmap_clear_bootstrap_pagetable(pt_entry_t *base) {
#endif /* PAE */
for (i = 0; i < NPTES; i++) {
pt_entry_t pde = dir[i];
- unsigned long pfn = mfn_to_pfn(atop(pde));
+ unsigned long pfn = atop(pte_to_pa(pde));
void *pgt = (void*) phystokv(ptoa(pfn));
if (pde & INTEL_PTE_VALID)
hyp_free_page(pfn, pgt);