Re: [patch 1/2] mm, doc: cleanup and clarify munmap behavior for hugetlb memory
From: Eric B Munson <hidden>
Date: 2015-03-27 13:58:51
Also in:
linux-mm, lkml
On Thu, 26 Mar 2015, David Rientjes wrote:
munmap(2) of hugetlb memory requires a length that is hugepage aligned, otherwise it may fail. Add this to the documentation. This also cleans up the documentation and separates it into logical units: one part refers to MAP_HUGETLB and another part refers to requirements for shared memory segments. Signed-off-by: David Rientjes <redacted> ---
If this is the route we are going to take, this behavoir needs to be called out prominently in the mmap/munmap man page.
quoted hunk ↗ jump to hunk
Documentation/vm/hugetlbpage.txt | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-)diff --git a/Documentation/vm/hugetlbpage.txt b/Documentation/vm/hugetlbpage.txt --- a/Documentation/vm/hugetlbpage.txt +++ b/Documentation/vm/hugetlbpage.txt@@ -289,15 +289,20 @@ file systems, write system calls are not. Regular chown, chgrp, and chmod commands (with right permissions) could be used to change the file attributes on hugetlbfs. -Also, it is important to note that no such mount command is required if the +Also, it is important to note that no such mount command is required if applications are going to use only shmat/shmget system calls or mmap with -MAP_HUGETLB. Users who wish to use hugetlb page via shared memory segment -should be a member of a supplementary group and system admin needs to -configure that gid into /proc/sys/vm/hugetlb_shm_group. It is possible for -same or different applications to use any combination of mmaps and shm* -calls, though the mount of filesystem will be required for using mmap calls -without MAP_HUGETLB. For an example of how to use mmap with MAP_HUGETLB see -map_hugetlb.c. +MAP_HUGETLB. For an example of how to use mmap with MAP_HUGETLB see map_hugetlb +below. + +Users who wish to use hugetlb memory via shared memory segment should be a +member of a supplementary group and system admin needs to configure that gid +into /proc/sys/vm/hugetlb_shm_group. It is possible for same or different +applications to use any combination of mmaps and shm* calls, though the mount of +filesystem will be required for using mmap calls without MAP_HUGETLB. + +When using munmap(2) to unmap hugetlb memory, the length specified must be +hugepage aligned, otherwise it will fail with errno set to EINVAL. + Examples ======== --To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo-Bw31MaZKKs0EbZ0PF+XxCw@public.gmane.org For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org"> email-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org </a>
Attachments
- signature.asc [application/pgp-signature] 819 bytes