diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2006-09-27 10:50:01 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-09-27 17:26:12 +0200 |
commit | 5b99cd0effaf846240a15441aec459a592577eaf (patch) | |
tree | 355772422c716698762030e6261596c2ba484a37 /mm/truncate.c | |
parent | [PATCH] vm: add per-zone writeout counter (diff) | |
download | linux-5b99cd0effaf846240a15441aec459a592577eaf.tar.xz linux-5b99cd0effaf846240a15441aec459a592577eaf.zip |
[PATCH] own header file for struct page
This moves the definition of struct page from mm.h to its own header file
page-struct.h. This is a prereq to fix SetPageUptodate which is broken on
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)
_page gets used twice in this macro which can cause subtle bugs. Using
__page for the page_test_and_clear_dirty call doesn't work since it causes
yet another problem with the page_test_and_clear_dirty macro as well.
In order to avoid all these problems caused by macros it seems to be a good
idea to get rid of them and convert them to static inline functions.
Because of header file include order it's necessary to have a seperate
header file for the struct page definition.
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/truncate.c')
0 files changed, 0 insertions, 0 deletions