The following is a 'possible' way to add such functionality. I just did what was easy and pre-allocated contiguous pages which are used to populate the mapping. I did not use any of the higher order allocators such as alloc_contig_range. Therefore, it is limited to allocations of MAX_ORDER size. Also, the allocations should probably be done outside mmap_sem but that was the easiest place to do it in this quick and easy POC. I just wanted to throw out some code to get further ideas. It is far from complete. Mike Kravetz (3): mm/map_contig: Add VM_CONTIG flag to vma struct mm/map_contig: Use pre-allocated pages for VM_CONTIG mappings mm/map_contig: Add mmap(MAP_CONTIG) support include/linux/mm.h | 1 + include/uapi/asm-generic/mman.h | 1 + kernel/fork.c | 2 +- mm/memory.c | 13 +++++- mm/mmap.c | 94 +++++++++++++++++++++++++++++++++++++++++ 5 files changed, 109 insertions(+), 2 deletions(-) -- 2.13.6 -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html