Re: [PATCH] mm: vmscan: fix the page state calculation in too_many_isolated

2015-01-14 Thread Vinayak Menon
On 01/13/2015 09:39 PM, Johannes Weiner wrote: On Tue, Jan 13, 2015 at 04:37:27PM +0530, Vinayak Menon wrote: @@ -1392,6 +1392,44 @@ int isolate_lru_page(struct page *page) return ret; } +static int __too_many_isolated(struct zone *zone, int file, + struct scan_control *sc, int

Re: [PATCH] mm: vmscan: fix the page state calculation in too_many_isolated

2015-01-13 Thread Johannes Weiner
On Tue, Jan 13, 2015 at 04:37:27PM +0530, Vinayak Menon wrote: > @@ -1392,6 +1392,44 @@ int isolate_lru_page(struct page *page) > return ret; > } > > +static int __too_many_isolated(struct zone *zone, int file, > + struct scan_control *sc, int safe) > +{ > + unsigned long inactive,

[PATCH] mm: vmscan: fix the page state calculation in too_many_isolated

2015-01-13 Thread Vinayak Menon
It is observed that sometimes multiple tasks get blocked for long in the congestion_wait loop below, in shrink_inactive_list. This is because of vm_stat values not being synced. (__schedule) from [] (schedule_timeout) from [] (io_schedule_timeout) from [] (congestion_wait) from [] (shrink_inactive