On 03/06/2015 02:13 PM, Andi Kleen wrote:
Mike Kravetz <mike.kravetz@xxxxxxxxxx> writes:
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.
What's the difference of this new option to simply doing
mount -t hugetlbfs none /huge
echo XXX > /proc/sys/vm/nr_hugepages
In the above sequence, it is still possible for another user/application
to allocate some (or all) of the XXX huge pages. There is no guarantee
that users of the filesystem will get all XXX pages.
I see the use of the reserve option to be:
# Make sure there are XXX huge pages in the global pool
echo XXX > /proc/sys/vm/nr_hugepages
# Mount/create the filesystem and reserve XXX huge pages
mount -t hugetlbfs -o size=XXX,reserve=XXX none /huge
If the mount is successful, then users of the filesystem know their are
XXX huge pages available for their use.
--
Mike Kravetz
--
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>