Re: [RFCv2] mm: page allocation for less fragmentation

Mel Gorman
2015-03-25T10:56:48Z

On Wed, Mar 25, 2015 at 11:39:15AM +0900, Gioh Kim wrote:
> My driver allocates more than 40MB pages via alloc_page() at a time and
> maps them at virtual address. Totally it uses 300~400MB pages.
>
> If I run a heavy load test for a few days in 1GB memory system, I cannot allocate even order=3 pages
> because-of the external fragmentation.
>
> I thought I needed a anti-fragmentation solution for my driver.
> But there is no allocation function that considers fragmentation.
> The compaction is not helpful because it is only for movable pages, not unmovable pages.
>
> This patch proposes a allocation function allocates only pages in the same pageblock.
>

Is this not what CMA is for? Or creating a MOVABLE zone?

--
Mel Gorman
SUSE Labs