Re: [patch] mmap.2: document the munmap exception for underlying page size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/21/2015 05:41 PM, David Rientjes wrote:
munmap(2) will fail with an errno of EINVAL for hugetlb memory if the
length is not a multiple of the underlying page size.

Documentation/vm/hugetlbpage.txt was updated to specify this behavior
since Linux 4.1 in commit 80d6b94bd69a ("mm, doc: cleanup and clarify
munmap behavior for hugetlb memory").

Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
---
  man2/mmap.2 | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/man2/mmap.2 b/man2/mmap.2
--- a/man2/mmap.2
+++ b/man2/mmap.2
@@ -383,6 +383,10 @@ All pages containing a part
  of the indicated range are unmapped, and subsequent references
  to these pages will generate
  .BR SIGSEGV .
+An exception is when the underlying memory is not of the native page
+size, such as hugetlb page sizes, whereas
+.I length
+must be a multiple of the underlying page size.
  It is not an error if the
  indicated range does not contain any mapped pages.
  .SS Timestamps changes for file-backed mappings

--

Should we also add a similar comment for the mmap offset?  Currently
the man page says:

"offset must be a multiple of the page size as returned by
 sysconf(_SC_PAGE_SIZE)."

For hugetlbfs, I beieve the offset must be a multiple of the
hugetlb page size.  A similar comment/exception about using
the "underlying page size" would apply here as well.

--
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>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]