Prev: Dynamic Debug: Introduce global fake module param module.ddebug
Next: powerpc: implement arch_setup_pdev_archdata
From: Minchan Kim on 5 Aug 2010 11:50 On Thu, Aug 05, 2010 at 03:16:06PM +0900, KOSAKI Motohiro wrote: > isolate_lru_pages() doesn't only isolate LRU tail pages, but also > isolate neighbor pages of the eviction page. > > Now, the neighbor search don't stop even if neighbors can't be isolated. > It is silly. successful higher order allocation need full contenious > memory, even though only one page reclaim failure mean to fail making > enough contenious memory. > > Then, isolate_lru_pages() should stop to search PFN neighbor pages and > try to search next page on LRU soon. This patch does it. Also all of > lumpy reclaim failure account nr_lumpy_failed. > > Signed-off-by: KOSAKI Motohiro <kosaki.motohiro(a)jp.fujitsu.com> I agree this patch. But I have a one question. > --- > mm/vmscan.c | 24 ++++++++++++++++-------- > 1 files changed, 16 insertions(+), 8 deletions(-) > <snip> > if (__isolate_lru_page(cursor_page, mode, file) == 0) { > list_move(&cursor_page->lru, dst); > @@ -1074,9 +1080,11 @@ static unsigned long isolate_lru_pages(unsigned long nr_to_scan, > nr_lumpy_dirty++; > scan++; > } else { > - if (mode == ISOLATE_BOTH && > - page_count(cursor_page)) > - nr_lumpy_failed++; sc->order = 1; shrink_inactive_list; isolate_pages_global with ISOLATE_INACTIVE(I mean no lumpy relcaim mode); lumpy relcaim in inactive list in isolate_lru_pages; (But I am not sure we can call it as lumpy reclaim. but at lesat I think it a part of lumpy reclaim) I mean it can reclaim physical pfn order not LRU order in inactive list since it only consider sc->order. Is it a intentional? I guess it's intentional since we care of ISOLATE_BOTH when we increase nr_lumpy_failed. If it is, Shouldn't we care of ISOLATE_BOTH still? > + /* the page is freed already. */ > + if (!page_count(cursor_page)) > + continue; > + nr_lumpy_failed++; > + break; > } > } > } > -- > 1.6.5.2 > -- Kind regards, Minchan Kim -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |