This is my first time posting to any mailing list, so I apologize for any mistakes. The fcntl(3p) says: When the file descriptor fildes refers to a shared memory object, the behavior of fcntl() shall be the same as for a regular file except the effect of the following values for the argument cmd shall be unspecified: F_SETFL, F_GETLK, F_SETLK, and F_SETLKW. However, fcntl(2) says nothing about that. I think it should clarify whether or not using these values with shared memory objects is expected to work the same as with regular files.