diff --git a/[refs] b/[refs] index f76a032e02c6..c509bf71c2a2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9a75c6e5240f7edc5955e8da5b94bde6f96070b3 +refs/heads/master: 1c7e7f6c0703d03af6bcd5ccc11fc15d23e5ecbe diff --git a/trunk/mm/vmscan.c b/trunk/mm/vmscan.c index 661576324c7f..66e431060c05 100644 --- a/trunk/mm/vmscan.c +++ b/trunk/mm/vmscan.c @@ -2688,7 +2688,10 @@ static void kswapd_try_to_sleep(pg_data_t *pgdat, int order, int classzone_idx) * them before going back to sleep. */ set_pgdat_percpu_threshold(pgdat, calculate_normal_threshold); - schedule(); + + if (!kthread_should_stop()) + schedule(); + set_pgdat_percpu_threshold(pgdat, calculate_pressure_threshold); } else { if (remaining)