
From: Christoph Lameter <christoph@lameter.com>

On Wed, 27 Jul 2005, Andrew Morton wrote:

> mm/built-in.o(.text+0x1a56c): In function `handle_mm_fault':
> mm/memory.c:2150: undefined reference to `pud_alloc_one'                        

Yuck these are all 4level-fixup related things which folds the pud 
 
This should fix it (tested using i386 folding only I have no alpha):

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 mm/memory.c |    2 ++
 1 files changed, 2 insertions(+)

diff -puN mm/memory.c~page-fault-patches-optional-page_lock-acquisition-in-fix mm/memory.c
--- devel/mm/memory.c~page-fault-patches-optional-page_lock-acquisition-in-fix	2005-07-28 12:06:11.000000000 -0700
+++ devel-akpm/mm/memory.c	2005-07-28 12:06:11.000000000 -0700
@@ -2089,6 +2089,7 @@ int handle_mm_fault(struct mm_struct *mm
 	 */
 	page_table_atomic_start(mm);
 	pgd = pgd_offset(mm, address);
+#ifndef __PAGETABLE_PUD_FOLDED
 	if (unlikely(pgd_none(*pgd))) {
 		pud_t *new;
 
@@ -2102,6 +2103,7 @@ int handle_mm_fault(struct mm_struct *mm
 		if (!pgd_test_and_populate(mm, pgd, new))
 			pud_free(new);
 	}
+#endif
 
 	pud = pud_offset(pgd, address);
 	if (unlikely(pud_none(*pud))) {
_
