aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/page-flags.h
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2006-09-29 01:58:41 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2006-09-29 09:18:03 -0700
commit2dcea57ae19275451a756a2d5bf96b329487b0e0 (patch)
tree37b0def2369c106fdf3653ca85e0c1a34ce4d905 /include/linux/page-flags.h
parent[PATCH] JBD: memory leak in "journal_init_dev()" (diff)
downloadlinux-dev-2dcea57ae19275451a756a2d5bf96b329487b0e0.tar.xz
linux-dev-2dcea57ae19275451a756a2d5bf96b329487b0e0.zip
[PATCH] convert s390 page handling macros to functions
Convert s390 page handling macros to functions. In particular this fixes a problem with s390's SetPageUptodate macro which uses its input parameter twice which again can cause subtle bugs. [akpm@osdl.org: build fix] Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to '')
-rw-r--r--include/linux/page-flags.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h
index 9d7921dd50f0..4830a3bedfb2 100644
--- a/include/linux/page-flags.h
+++ b/include/linux/page-flags.h
@@ -128,12 +128,11 @@
#define PageUptodate(page) test_bit(PG_uptodate, &(page)->flags)
#ifdef CONFIG_S390
-#define SetPageUptodate(_page) \
- do { \
- struct page *__page = (_page); \
- if (!test_and_set_bit(PG_uptodate, &__page->flags)) \
- page_test_and_clear_dirty(_page); \
- } while (0)
+static inline void SetPageUptodate(struct page *page)
+{
+ if (!test_and_set_bit(PG_uptodate, &page->flags))
+ page_test_and_clear_dirty(page);
+}
#else
#define SetPageUptodate(page) set_bit(PG_uptodate, &(page)->flags)
#endif