diff -uNr linux.8/arch/armnommu/kernel/armksyms.c linux/arch/armnommu/kernel/armksyms.c
--- linux.8/arch/armnommu/kernel/armksyms.c	2005-02-19 17:44:30.000000000 +0100
+++ linux/arch/armnommu/kernel/armksyms.c	2005-02-19 17:56:18.000000000 +0100
@@ -256,3 +256,5 @@
 EXPORT_SYMBOL_NOVERS(__up_wakeup);
 
 EXPORT_SYMBOL(get_wchan);
+
+EXPORT_SYMBOL(ldiscs);  /* BDL */
diff -uNr linux.8/drivers/char/tty_io.c linux/drivers/char/tty_io.c
--- linux.8/drivers/char/tty_io.c	2005-02-19 17:42:57.000000000 +0100
+++ linux/drivers/char/tty_io.c	2005-02-19 17:56:46.000000000 +0100
@@ -2058,7 +2058,6 @@
 #endif /* CONFIG_DEVFS_FS */
 }
 
-EXPORT_SYMBOL(ldiscs);  /* BDL */
 EXPORT_SYMBOL(tty_register_devfs);
 EXPORT_SYMBOL(tty_unregister_devfs);
 
diff -uNr linux.8/fs/exec.c linux/fs/exec.c
--- linux.8/fs/exec.c	2005-02-19 17:42:57.000000000 +0100
+++ linux/fs/exec.c	2005-02-19 17:47:59.000000000 +0100
@@ -166,8 +166,11 @@
 		for (;;) {
 			char * p;
 			int error;
-
+#ifdef CONFIG_MIPS
+			error = __get_user(p,argv);
+#else
 			error = get_user(p,argv);
+#endif
 			if (error)
 				return error;
 			if (!p)
@@ -422,6 +425,7 @@
 		goto fail;
 	old_fs = get_fs();
 	set_fs(get_ds());
+
 	result = file->f_op->read(file, addr, count, &pos);
 	set_fs(old_fs);
 fail:
@@ -926,6 +930,7 @@
 	}
 
 	retval = prepare_binprm(&bprm);
+
 	if (retval < 0) 
 		goto out; 
 
diff -uNr linux.8/mmnommu/bootmem.c linux/mmnommu/bootmem.c
--- linux.8/mmnommu/bootmem.c	2005-02-19 17:44:30.000000000 +0100
+++ linux/mmnommu/bootmem.c	2005-02-19 17:53:36.000000000 +0100
@@ -1,6 +1,8 @@
 /*
- *  linux/mm/bootmem.c
+ *  linux/mmnommu/bootmem.c
  *
+ *  Copyright (c) 2001 Lineo, Inc. David McCullough <davidm@lineo.com>
+ *  Copyright (c) 2000-2001 D Jeff Dionne <jeff@uClinux.org> ref uClinux 2.0
  *  Copyright (C) 1999 Ingo Molnar
  *  Discontiguous memory support, Kanoj Sarcar, SGI, Nov 1999
  *
diff -uNr linux.8/mmnommu/filemap.c linux/mmnommu/filemap.c
--- linux.8/mmnommu/filemap.c	2005-02-19 17:41:22.000000000 +0100
+++ linux/mmnommu/filemap.c	2005-02-19 17:47:21.000000000 +0100
@@ -1315,7 +1315,6 @@
 			desc.buf = buf;
 			desc.error = 0;
 			do_generic_file_read(filp, ppos, &desc, file_read_actor);
-
 			retval = desc.written;
 			if (!retval)
 				retval = desc.error;
@@ -2561,7 +2560,7 @@
 
 	if (!access_ok(VERIFY_READ, buf, count))
 		return -EFAULT;
-		
+
 	down(&inode->i_sem);
 
 	pos = *ppos;
@@ -2721,7 +2720,6 @@
 	
 	err = written ? written : status;
 out:
-
 	up(&inode->i_sem);
 	return err;
 fail_write:
diff -uNr linux.8/mmnommu/page_alloc.c linux/mmnommu/page_alloc.c
--- linux.8/mmnommu/page_alloc.c	2005-02-19 17:44:30.000000000 +0100
+++ linux/mmnommu/page_alloc.c	2005-02-19 17:47:51.000000000 +0100
@@ -53,6 +53,7 @@
 #define memlist_next(x) ((x)->next)
 #define memlist_prev(x) ((x)->prev)
 
+
 /*
  * Temporary debugging check.
  */
@@ -305,7 +306,7 @@
 	zone_t **zone;
 	int direct_reclaim = 0;
 	struct page * page;
-
+	
 	/*
 	 * Allocations put pressure on the VM subsystem.
 	 */
@@ -849,6 +850,11 @@
 			MAP_ALIGN((unsigned long)lmem_map - PAGE_OFFSET));
 	}
 	*gmap = pgdat->node_mem_map = lmem_map;
+
+#if 0 // ...MaTed---
+printk(KERN_DEBUG "\n***free_area_init_core: node_mem_map=0x%08lx",
+       pgdat->node_mem_map);
+#endif
 	pgdat->node_size = totalpages;
 	pgdat->node_start_paddr = zone_start_paddr;
 	pgdat->node_start_mapnr = (lmem_map - mem_map);
@@ -913,7 +919,11 @@
 		zone->zone_start_mapnr = offset;
 		zone->zone_start_paddr = zone_start_paddr;
 
+#ifdef	CONFIG_ARCH_S3C4
+		if ((zone_start_paddr) & (zone_required_alignment-1))	/* OZH */
+#else
 		if ((zone_start_paddr >> PAGE_SHIFT) & (zone_required_alignment-1))
+#endif
 			printk("BUG: wrong zone alignment, it will crash\n");
 
 		for (i = 0; i < size; i++) {

