Messages in this thread | | | Date | Mon, 07 Jul 2014 17:57:49 +0200 | From | Vlastimil Babka <> | Subject | Re: [PATCH 08/10] mm/page_alloc: use get_onbuddy_migratetype() to get buddy list type |
| |
On 07/04/2014 09:57 AM, Joonsoo Kim wrote: > When isolating free page, what we want to know is which list > the page is linked. If it is linked in isolate migratetype buddy list, > we can skip watermark check and freepage counting. And if it is linked > in CMA migratetype buddy list, we need to fixup freepage counting. For > this purpose, get_onbuddy_migratetype() is more fit and cheap than > get_pageblock_migratetype(). So use it.
Hm but you made get_onbuddy_migratetype() work only with CONFIG_MEMORY_ISOLATION. And __isolate_free_page is (despite the name) not at all limited to CONFIG_MEMORY_ISOLATION.
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com> > --- > mm/page_alloc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index e1c4c3e..d9fb8bb 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -1597,7 +1597,7 @@ static int __isolate_free_page(struct page *page, unsigned int order) > BUG_ON(!PageBuddy(page)); > > zone = page_zone(page); > - mt = get_pageblock_migratetype(page); > + mt = get_onbuddy_migratetype(page); > > if (!is_migrate_isolate(mt)) { > /* Obey watermarks as if the page was being allocated */ >
| |