diff --git a/mm/vmscan.c b/mm/vmscan.c index 885207a6b6b735cb7ca0dd276b907312300b5df1..c26986c85ce01b1d15a8914065a829890054c210 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -1922,6 +1922,9 @@ static int sleeping_prematurely(pg_data_t *pgdat, int order, long remaining) if (!populated_zone(zone)) continue; + if (zone_is_all_unreclaimable(zone)) + continue; + if (!zone_watermark_ok(zone, order, high_wmark_pages(zone), 0, 0)) return 1;