Index: kernel/arch/ppc64/src/mm/page.c
===================================================================
--- kernel/arch/ppc64/src/mm/page.c	(revision 879585a3fd47daccb6ab751ad240297f65de5bae)
+++ kernel/arch/ppc64/src/mm/page.c	(revision de33dab3d6e266b32bfcf983b683fc6d18b2ac72)
@@ -265,8 +265,6 @@
 		int flags;
 		
-		/* Frames below 128 MB are mapped using BAT,
-		   map rest of the physical memory */
 		for (cur = 128 << 20; cur < last_frame; cur += FRAME_SIZE) {
-			flags = PAGE_CACHEABLE;
+			flags = PAGE_CACHEABLE | PAGE_WRITE;
 			if ((PA2KA(cur) >= config.base) && (PA2KA(cur) < config.base + config.kernel_size))
 				flags |= PAGE_GLOBAL;
@@ -297,5 +295,5 @@
 	pfn_t i;
 	for (i = 0; i < ADDR2PFN(ALIGN_UP(size, PAGE_SIZE)); i++)
-		page_mapping_insert(AS_KERNEL, virtaddr + PFN2ADDR(i), physaddr + PFN2ADDR(i), PAGE_NOT_CACHEABLE);
+		page_mapping_insert(AS_KERNEL, virtaddr + PFN2ADDR(i), physaddr + PFN2ADDR(i), PAGE_NOT_CACHEABLE | PAGE_WRITE);
 	
 	last_frame = ALIGN_UP(last_frame + size, FRAME_SIZE);
