Index: arch/ia32/src/drivers/ega.c
===================================================================
--- arch/ia32/src/drivers/ega.c	(revision fc1e4f6fda536ab9535536af72ca0eb08473cd3f)
+++ arch/ia32/src/drivers/ega.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -60,5 +60,5 @@
 	__u8 hi, lo;
 
-	page_mapping_insert(AS_KERNEL, PA2KA(VIDEORAM), VIDEORAM, PAGE_NOT_CACHEABLE, 0);
+	page_mapping_insert(AS_KERNEL, PA2KA(VIDEORAM), VIDEORAM, PAGE_NOT_CACHEABLE);
 	outb(0x3d4,0xe);
 	hi = inb(0x3d5);
Index: arch/ia32/src/mm/as.c
===================================================================
--- arch/ia32/src/mm/as.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
+++ arch/ia32/src/mm/as.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2006 Jakub Jermar
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ *   notice, this list of conditions and the following disclaimer.
+ * - Redistributions in binary form must reproduce the above copyright
+ *   notice, this list of conditions and the following disclaimer in the
+ *   documentation and/or other materials provided with the distribution.
+ * - The name of the author may not be used to endorse or promote products
+ *   derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include <arch/mm/as.h>
+#include <genarch/mm/as_pt.h>
+
+/** Architecture dependent address space init. */
+void as_arch_init(void)
+{
+	as_operations = &as_pt_operations;
+}
Index: arch/ia32/src/mm/page.c
===================================================================
--- arch/ia32/src/mm/page.c	(revision fc1e4f6fda536ab9535536af72ca0eb08473cd3f)
+++ arch/ia32/src/mm/page.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -43,9 +43,6 @@
 #include <interrupt.h>
 
-static __address bootstrap_dba; 
-
 void page_arch_init(void)
 {
-	__address dba;
 	__address cur;
 
@@ -53,20 +50,15 @@
 		page_operations = &page_pt_operations;
 	
-		dba = frame_alloc(FRAME_KA | FRAME_PANIC, ONE_FRAME, NULL);
-		memsetb(dba, PAGE_SIZE, 0);
-
-		bootstrap_dba = dba;
-		
 		/*
 		 * PA2KA(identity) mapping for all frames until last_frame.
 		 */
 		for (cur = 0; cur < last_frame; cur += FRAME_SIZE)
-			page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, PAGE_CACHEABLE, KA2PA(dba));
+			page_mapping_insert(AS_KERNEL, PA2KA(cur), cur, PAGE_CACHEABLE);
 
 		exc_register(14, "page_fault", page_fault);
-		write_cr3(KA2PA(dba));
+		write_cr3((__address) AS_KERNEL->page_table);
 	}
 	else {
-		write_cr3(KA2PA(bootstrap_dba));
+		write_cr3((__address) AS_KERNEL->page_table);
 	}
 
Index: arch/ia32/src/smp/smp.c
===================================================================
--- arch/ia32/src/smp/smp.c	(revision fc1e4f6fda536ab9535536af72ca0eb08473cd3f)
+++ arch/ia32/src/smp/smp.c	(revision a294ad07c4e1a72ddd9bcff5b35ee94dc3ec6e28)
@@ -67,7 +67,7 @@
 	if (config.cpu_count > 1) {		
 		page_mapping_insert(AS_KERNEL, (__address) l_apic, (__address) l_apic, 
-				  PAGE_NOT_CACHEABLE, 0);
+				  PAGE_NOT_CACHEABLE);
 		page_mapping_insert(AS_KERNEL, (__address) io_apic, (__address) io_apic,
-				  PAGE_NOT_CACHEABLE, 0);
+				  PAGE_NOT_CACHEABLE);
         }
 
