Index: arch/ia32/src/mm/frame.c
===================================================================
--- arch/ia32/src/mm/frame.c	(revision d47f0e12040afebeaf51638a0d752c51419a5883)
+++ arch/ia32/src/mm/frame.c	(revision a7a10630dfc3a5ecc03560398ae5bced5116ebb2)
@@ -38,8 +38,4 @@
 {
 	if (config.cpu_active == 1) {
-		kernel_frames = frames;
-		kernel_frames_free = frames_free;
-		frame_kernel_bitmap = frame_bitmap;
-
 		frame_not_free(0x0);
 
Index: arch/ia32/src/mm/page.c
===================================================================
--- arch/ia32/src/mm/page.c	(revision d47f0e12040afebeaf51638a0d752c51419a5883)
+++ arch/ia32/src/mm/page.c	(revision a7a10630dfc3a5ecc03560398ae5bced5116ebb2)
@@ -65,6 +65,6 @@
 		 */
 		for (i = 1; i < frames; i++) {
-			map_page_to_frame(i * PAGE_SIZE, i * PAGE_SIZE, PAGE_CACHEABLE, dba);
-			map_page_to_frame(PA2KA(i * PAGE_SIZE), i * PAGE_SIZE, PAGE_CACHEABLE, dba);
+			map_page_to_frame(i * PAGE_SIZE, i * PAGE_SIZE, PAGE_CACHEABLE, KA2PA(dba));
+			map_page_to_frame(PA2KA(i * PAGE_SIZE), i * PAGE_SIZE, PAGE_CACHEABLE, KA2PA(dba));
 		}
 
@@ -113,5 +113,5 @@
 	pte = (page >> 12) & 0x3ff;	/* page table entry */
 	
-	pd = (struct page_specifier *) dba;
+	pd = (struct page_specifier *) PA2KA(dba);
 	
 	if (!pd[pde].present) {
@@ -127,5 +127,5 @@
 	}
 	
-	pt = (struct page_specifier *) (pd[pde].frame_address << 12);
+	pt = (struct page_specifier *) PA2KA((pd[pde].frame_address << 12));
 
 	pt[pte].frame_address = frame >> 12;
