hugetlbfs allocates huge pages from the global pool as needed. Even if the global pool contains a sufficient number pages for the filesystem size at mount time, those global pages could be grabbed for some other use. As a result, filesystem huge page allocations may fail due to lack of pages. Add a new hugetlbfs mount option 'reserved' to specify that the number of pages associated with the size of the filesystem will be reserved. If there are insufficient pages, the mount will fail. The reservation is maintained for the duration of the filesystem so that as pages are allocated and free'ed a sufficient number of pages remains reserved. Mike Kravetz (3): hugetlbfs: add reserved mount fields to subpool structure hugetlbfs: coordinate global and subpool reserve accounting hugetlbfs: accept subpool reserved option and setup accordingly fs/hugetlbfs/inode.c | 15 +++++++++++++-- include/linux/hugetlb.h | 7 +++++++ mm/hugetlb.c | 37 +++++++++++++++++++++++++++++-------- 3 files changed, 49 insertions(+), 10 deletions(-) -- 2.1.0 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>