summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/filemap.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mm/filemap.c b/mm/filemap.c
index 439b2bea8e34..93595c327bbd 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -1379,8 +1379,13 @@ retry_find:
* Ok, found a page in the page cache, now we need to check
* that it's up-to-date.
*/
- if (!PageUptodate(page))
+ if (!PageUptodate(page)) {
+ if (nonblock) {
+ page_cache_release(page);
+ return NULL;
+ }
goto page_not_uptodate;
+ }
success:
/*