diff options
Diffstat (limited to 'mm/vmscan.c')
-rw-r--r-- | mm/vmscan.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/vmscan.c b/mm/vmscan.c index ec6dbcb976d1..c007e78d7078 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
@@ -1045,6 +1045,9 @@ int __isolate_lru_page(struct page *page, isolate_mode_t mode, int file) | |||
1045 | 1045 | ||
1046 | ret = -EBUSY; | 1046 | ret = -EBUSY; |
1047 | 1047 | ||
1048 | if ((mode & ISOLATE_CLEAN) && (PageDirty(page) || PageWriteback(page))) | ||
1049 | return ret; | ||
1050 | |||
1048 | if (likely(get_page_unless_zero(page))) { | 1051 | if (likely(get_page_unless_zero(page))) { |
1049 | /* | 1052 | /* |
1050 | * Be careful not to clear PageLRU until after we're | 1053 | * Be careful not to clear PageLRU until after we're |