[RFC v2 PATCH 0/5] hugetlbfs: add fallocate support

From: Mike Kravetz
Date: Thu Apr 23 2015 - 18:14:11 EST


hugetlbfs is used today by applications that want a high degree of
control over huge page usage. Often, large hugetlbfs files are used
to map a large number huge pages into the application processes.
The applications know when page ranges within these large files will
no longer be used, and ideally would like to release them back to
the subpool or global pools for other uses. The fallocate() system
call provides an interface for preallocation and hole punching within
files. This patch set adds fallocate functionality to hugetlbfs.

RFC v2:
Addressed alignment and error handling issues noticed by Hillf Danton
New region_del() routine for region tracking/resv_map of ranges
Fixed several issues found during more extensive testing
Error handling in region_del() when kmalloc() fails stills needs
to be addressed
madvise remove support remains

Mike Kravetz (5):
hugetlbfs: truncate_hugepages() takes a range of pages
hugetlbfs: remove region_truncte() as region_del() can be used
hugetlbfs: New huge_add_to_page_cache helper routine
hugetlbfs: add hugetlbfs_fallocate()
mm: madvise allow remove operation for hugetlbfs

fs/hugetlbfs/inode.c | 169 ++++++++++++++++++++++++++++++++++++++++++++++--
include/linux/hugetlb.h | 8 ++-
mm/hugetlb.c | 110 ++++++++++++++++++++++---------
mm/madvise.c | 2 +-
4 files changed, 248 insertions(+), 41 deletions(-)

--
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/