summaryrefslogtreecommitdiff
path: root/fs/mpage.c
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2011-02-02 14:39:40 +1100
committerStephen Rothwell <sfr@canb.auug.org.au>2011-02-02 14:39:40 +1100
commit6eaa0baa111f9f66cbe334be96982edaa4dfc7c9 (patch)
tree1f7373ceddb2abb649a1f7a6ebf151e167110b65 /fs/mpage.c
parent46c52033ffcc326a76e64ef43cfcce4bd8159ccc (diff)
parent5231e92e133d6db6681a4485b1794a01469ca9ad (diff)
Merge remote branch 'cleancache/linux-next'
Conflicts: fs/ocfs2/super.c fs/super.c include/linux/fs.h mm/Kconfig
Diffstat (limited to 'fs/mpage.c')
-rw-r--r--fs/mpage.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/mpage.c b/fs/mpage.c
index d78455a81ec9..7d0e66686207 100644
--- a/fs/mpage.c
+++ b/fs/mpage.c
@@ -27,6 +27,7 @@
#include <linux/writeback.h>
#include <linux/backing-dev.h>
#include <linux/pagevec.h>
+#include <linux/cleancache.h>
/*
* I/O completion handler for multipage BIOs.
@@ -271,6 +272,12 @@ do_mpage_readpage(struct bio *bio, struct page *page, unsigned nr_pages,
SetPageMappedToDisk(page);
}
+ if (fully_mapped && blocks_per_page == 1 && !PageUptodate(page) &&
+ cleancache_get_page(page) == 0) {
+ SetPageUptodate(page);
+ goto confused;
+ }
+
/*
* This page will go to BIO. Do we need to send this BIO off first?
*/