Messages in this thread | | | From | Mike Kravetz <> | Subject | [RFC PATCH 0/3] Add mmap(MAP_CONTIG) support | Date | Wed, 11 Oct 2017 18:46:08 -0700 |
| |
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
| |