Messages in this thread | | | Date | Fri, 06 Dec 2013 15:20:59 +0100 | From | Vlastimil Babka <> | Subject | Re: [PATCH 4/4] mm/compaction: respect ignore_skip_hint in update_pageblock_skip |
| |
On 12/06/2013 09:41 AM, Joonsoo Kim wrote: > update_pageblock_skip() only fits to compaction which tries to isolate by > pageblock unit. If isolate_migratepages_range() is called by CMA, it try to > isolate regardless of pageblock unit and it don't reference > get_pageblock_skip() by ignore_skip_hint. We should also respect it on > update_pageblock_skip() to prevent from setting the wrong information.
Yeah, this will also prevent updating cached migrate scanner pfn, which makes perfect sense, as cma doesn't read them.
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
> diff --git a/mm/compaction.c b/mm/compaction.c > index 805165b..f58bcd0 100644 > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -134,6 +134,10 @@ static void update_pageblock_skip(struct compact_control *cc, > bool migrate_scanner) > { > struct zone *zone = cc->zone; > + > + if (cc->ignore_skip_hint) > + return; > + > if (!page) > return; > >
| |