ALLOC_CONTIG_RANGE(9) Memory Management in Linux ALLOC_CONTIG_RANGE(9)NAMEalloc_contig_range - - tries to allocate given range of pages
int alloc_contig_range(unsigned long start, unsigned long end,
start PFN to allocate
one-past-the-last PFN to allocate
migratetype of the underlaying pageblocks (either #MIGRATE_MOVABLE
or #MIGRATE_CMA). All pageblocks in range must have the same
migratetype and it must be either of the two.
The PFN range does not have to be pageblock or MAX_ORDER_NR_PAGES
aligned, however it's the caller's responsibility to guarantee that we
are the only thread that changes migrate type of pageblocks the pages
The PFN range must belong to a single zone.
Returns zero on success or negative error code. On success all pages
which PFN is in [start, end) are allocated for the caller and need to
be freed with free_contig_range.
COPYRIGHTKernel Hackers Manual 3.8. June 2014 ALLOC_CONTIG_RANGE(9)