[PATCH v2 0/3] mm/cma: manage the memory of the CMA area by using the ZONE_MOVABLE

From: js1304
Date: Fri Dec 01 2017 - 02:53:22 EST


From: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>

v2
o previous failure in linux-next turned out that it's not the problem of
this patchset. It was caused by the wrong assumption by specific
architecture.

lkml.kernel.org/r/20171114173719.GA28152@xxxxxxxxxxx

o add missing cache flush to the patch "ARM: CMA: avoid double mapping
to the CMA area if CONFIG_HIGHMEM = y"


This patchset is the follow-up of the discussion about the
"Introduce ZONE_CMA (v7)" [1]. Please reference it if more information
is needed.

In this patchset, the memory of the CMA area is managed by using
the ZONE_MOVABLE. Since there is another type of the memory in this zone,
we need to maintain a migratetype for the CMA memory to account
the number of the CMA memory. So, unlike previous patchset, there is
less deletion of the code.

Otherwise, there is no big change.

Motivation of this patchset is described in the commit description of
the patch "mm/cma: manage the memory of the CMA area by using
the ZONE_MOVABLE". Please refer it for more information.

This patchset is based on linux-next-20170822 plus
"mm/page_alloc: don't reserve ZONE_HIGHMEM for ZONE_MOVABLE".

Thanks.

[1]: lkml.kernel.org/r/1491880640-9944-1-git-send-email-iamjoonsoo.kim@xxxxxxx


Joonsoo Kim (3):
mm/cma: manage the memory of the CMA area by using the ZONE_MOVABLE
mm/cma: remove ALLOC_CMA
ARM: CMA: avoid double mapping to the CMA area if CONFIG_HIGHMEM = y

arch/arm/mm/dma-mapping.c | 16 +++++++-
include/linux/memory_hotplug.h | 3 --
include/linux/mm.h | 1 +
mm/cma.c | 83 ++++++++++++++++++++++++++++++++++++------
mm/compaction.c | 4 +-
mm/internal.h | 4 +-
mm/page_alloc.c | 83 +++++++++++++++++++++++++++---------------
7 files changed, 145 insertions(+), 49 deletions(-)

--
2.7.4