Re: [PATCH V3 4/5] mm: mmap: Add mmap flag to request VM_LOCKONFAULT
From: Paul Gortmaker <hidden>
Date: 2015-07-18 19:11:56
Also in:
linux-api, linux-arch, linux-mm, lkml
On Tue, Jul 7, 2015 at 1:03 PM, Eric B Munson [off-list ref] wrote:
The cost of faulting in all memory to be locked can be very high when working with large mappings. If only portions of the mapping will be used this can incur a high penalty for locking. Now that we have the new VMA flag for the locked but not present state, expose it as an mmap option like MAP_LOCKED -> VM_LOCKED.
An automatic bisection on arch/tile leads to this commit:
5a5656f2c9b61c74c15f9ef3fa2e6513b6c237bb is the first bad commit
commit 5a5656f2c9b61c74c15f9ef3fa2e6513b6c237bb
Author: Eric B Munson [off-list ref]
Date: Thu Jul 16 10:09:22 2015 +1000
mm: mmap: add mmap flag to request VM_LOCKONFAULT
Fails with:
In file included from arch/tile/mm/init.c:24:
include/linux/mman.h: In function ‘calc_vm_flag_bits’:
include/linux/mman.h:90: error: ‘MAP_LOCKONFAULT’ undeclared (first
use in this function)
include/linux/mman.h:90: error: (Each undeclared identifier is
reported only once
include/linux/mman.h:90: error: for each function it appears in.)
In file included from arch/tile/mm/mmap.c:21:
include/linux/mman.h: In function ‘calc_vm_flag_bits’:
include/linux/mman.h:90: error: ‘MAP_LOCKONFAULT’ undeclared (first
use in this function)
include/linux/mman.h:90: error: (Each undeclared identifier is
reported only once
include/linux/mman.h:90: error: for each function it appears in.)
In file included from arch/tile/mm/fault.c:24:
include/linux/mman.h: In function ‘calc_vm_flag_bits’:
include/linux/mman.h:90: error: ‘MAP_LOCKONFAULT’ undeclared (first
use in this function)
include/linux/mman.h:90: error: (Each undeclared identifier is
reported only once
include/linux/mman.h:90: error: for each function it appears in.)
In file included from arch/tile/mm/hugetlbpage.c:27:
include/linux/mman.h: In function ‘calc_vm_flag_bits’:
include/linux/mman.h:90: error: ‘MAP_LOCKONFAULT’ undeclared (first
use in this function)
include/linux/mman.h:90: error: (Each undeclared identifier is
reported only once
include/linux/mman.h:90: error: for each function it appears in.)
make[1]: *** [arch/tile/mm/hugetlbpage.o] Error 1
http://kisskb.ellerman.id.au/kisskb/buildresult/12465365/
Paul.
--