diff --git a/man2/shmget.2 b/man2/shmget.2 index 6a2403bca..4088995c6 100644 --- a/man2/shmget.2 +++ b/man2/shmget.2 @@ -109,7 +109,12 @@ meaning, as the argument of .BR open (2). Presently, the execute permissions are not used by the system. -.\" FIXME -- document SHM_HUGETLB -- see Documentation/vm/hugetlbpage.txt +.TP +.B SHM_HUGETLB +Allocate the segment using "huge pages." +See the kernel source file +.I Documentation/vm/hugetlbpage.txt +for further information. .PP If a new shared memory segment is created, then its associated data structure @@ -212,6 +217,13 @@ or allocating a segment of the requested .I size would cause the system to exceed the system-wide limit on shared memory .RB ( SHMALL ). +.TP +.B EPERM +The +.B SHM_HUGETLB +flag was specified, but the caller was not privileged (did not have the +.B CAP_IPC_LOCK +capability). .SH NOTES .B IPC_PRIVATE isn't a flag field but a @@ -261,6 +273,9 @@ SVr4, SVID. SVr4 documents an additional error condition EEXIST. Until version 2.3.30 Linux would return EIDRM for a .BR shmget () on a shared memory segment scheduled for deletion. + +.B SHM_HUGETLB +is a non-portable Linux extension. .SH "SEE ALSO" .BR shmat (2), .BR shmctl (2),