From: Christoph Lameter <clameter@sgi.com>
Subject: page flags: Handle PG_uncached like all other flags

Remove the special setup for PG_uncached and simply make it part of the enum.
The page flags is only allocated when the kernel build includes the uncached
allocator.

Cc: Dean Nelson <dcn@sgi.com>
Cc: Jes Sorensen <jes@trained-monkey.org>
Signed-off-by: Christoph Lameter <clameter@sgi.com>

---
 include/linux/page-flags.h |   19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

Index: linux-2.6.25-rc5-mm1/include/linux/page-flags.h
===================================================================
--- linux-2.6.25-rc5-mm1.orig/include/linux/page-flags.h	2008-03-25 21:22:16.312931059 -0700
+++ linux-2.6.25-rc5-mm1/include/linux/page-flags.h	2008-03-25 21:22:53.466668675 -0700
@@ -99,16 +99,8 @@ enum pageflags {
 	 * read ahead needs to be done.
 	 */
 	PG_buddy,		/* Page is free, on buddy lists */
-
-#if (BITS_PER_LONG > 32)
-/*
- * 64-bit-only flags build down from bit 31
- *
- * 32 bit  -------------------------------| FIELDS |       FLAGS         |
- * 64 bit  |           FIELDS             | ??????         FLAGS         |
- *         63                            32                              0
- */
-	PG_uncached = 31,		/* Page has been mapped as uncached */
+#ifdef CONFIG_IA64_UNCACHED_ALLOCATOR
+	PG_uncached,		/* Page has been mapped as uncached */
 #endif
 	__NR_PAGEFLAGS
 };
@@ -205,8 +197,13 @@ static inline int PageSwapCache(struct p
 }
 #endif
 
-#if (BITS_PER_LONG > 32)
+#ifdef CONFIG_IA64_UNCACHED_ALLOCATOR
 PAGEFLAG(Uncached, uncached)
+#else
+static inline int PageUncached(struct page *)
+{
+	return 0;
+}
 #endif
 
 static inline int PageUptodate(struct page *page)