Messages in this thread | | | Subject | Re: [PATCH RFC 3/3] mm, vmscan: correct prepare_kswapd_sleep return value | From | hejianet <> | Date | Wed, 25 Jan 2017 10:24:08 +0800 |
| |
On 25/01/2017 6:01 AM, Rik van Riel wrote: > On Tue, 2017-01-24 at 15:49 +0800, Jia He wrote: >> When there is no reclaimable pages in the zone, even the zone is >> not balanced, we let kswapd go sleeping. That is prepare_kswapd_sleep >> will return true in this case. >> >> Signed-off-by: Jia He <hejianet@gmail.com> >> --- >> mm/vmscan.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/mm/vmscan.c b/mm/vmscan.c >> index 7396a0a..54445e2 100644 >> --- a/mm/vmscan.c >> +++ b/mm/vmscan.c >> @@ -3140,7 +3140,8 @@ static bool prepare_kswapd_sleep(pg_data_t >> *pgdat, int order, int classzone_idx) >> if (!managed_zone(zone)) >> continue; >> >> - if (!zone_balanced(zone, order, classzone_idx)) >> + if (!zone_balanced(zone, order, classzone_idx) >> + && !zone_reclaimable_pages(zone)) >> return false; >> } > > This patch does the opposite of what your changelog > says. The above keeps kswapd running forever if > the zone is not balanced, and there are no reclaimable > pages. sorry for the mistake, I will check what happened. I tested in my local system.
B.R. Jia > >
| |