summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2008-04-28 02:12:44 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-28 08:58:21 -0700
commit726b80127239aeea9c8d8aad5b4e2c80313e3ce8 (patch)
tree4b4df86f199f9bf9689f038132a8922f34a9c8d4 /include/linux
parent1cdf25d704f7951d02a04064c97db547d6021872 (diff)
page_mapping(): add ifdef around reference to swapper_space
This fixes the superh build when the pageflags patches are applied. But it shouldn't unless it's a gcc bug. Cc: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/mm.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/linux/mm.h b/include/linux/mm.h
index 24659ed06bae..4f3c1b2f44de 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
@@ -605,9 +605,12 @@ static inline struct address_space *page_mapping(struct page *page)
struct address_space *mapping = page->mapping;
VM_BUG_ON(PageSlab(page));
+#ifdef CONFIG_SWAP
if (unlikely(PageSwapCache(page)))
mapping = &swapper_space;
- else if (unlikely((unsigned long)mapping & PAGE_MAPPING_ANON))
+ else
+#endif
+ if (unlikely((unsigned long)mapping & PAGE_MAPPING_ANON))
mapping = NULL;
return mapping;
}