X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=fs%2Fmpage.c;h=fdfae9fa98cda52f26b730ab6786db084124d279;hb=b5a7e97039a80fae673ccc115ce595d5b88fb4ee;hp=0afc809e46e09b53cb767e56795fba3139c4b181;hpb=751516f0a9bad32544f40f471037c0e45fb639c9;p=karo-tx-linux.git diff --git a/fs/mpage.c b/fs/mpage.c index 0afc809e46e0..fdfae9fa98cd 100644 --- a/fs/mpage.c +++ b/fs/mpage.c @@ -27,6 +27,7 @@ #include #include #include +#include /* * 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? */