Re: [PATCH v3 0/6] Introduce ZONE_CMA

From: Joonsoo Kim
Date: Mon Jun 20 2016 - 03:02:17 EST


On Fri, Jun 17, 2016 at 03:38:49PM +0800, Chen Feng wrote:
> Hi Kim & feng,
>
> Thanks for the share. In our platform also has the same use case.
>
> We only let the alloc with GFP_HIGHUSER_MOVABLE in memory.c to use cma memory.
>
> If we add zone_cma, It seems can resolve the cma migrate issue.
>
> But when free_hot_cold_page, we need let the cma page goto system directly not the pcp.
> It can be fail while cma_alloc and cma_release. If we alloc the whole cma pages which
> declared before.

Hmm...I'm not sure I understand your explanation. So, if I miss
something, please let me know. We calls drain_all_pages() when
isolating pageblock and alloc_contig_range() also has one
drain_all_pages() calls to drain pcp pages. And, after pageblock isolation,
freed pages belonging to MIGRATE_ISOLATE pageblock will go to the
buddy directly so there would be no problem you mentioned. Isn't it?

Thanks.