mq_open(2): document sysctl limit EINVAL and ENFILE conditions

Document two missing error conditions for mq_open(2):

- EINVAL: returned when mq_maxmsg exceeds kern.mqueue.maxmsg or
  mq_msgsize exceeds kern.mqueue.maxmsgsize.
- ENFILE: add kern.mqueue.maxmq sysctl name to the existing entry.

PR:		243209
Reviewed by:	mhorne
MFC after:	1 week
Signed-off-by:	Kit Dallege <xaum.io@gmail.com>
Pull Request:	https://github.com/freebsd/freebsd-src/pull/2098
This commit is contained in:
Kit Dallege
2026-04-02 19:37:49 +02:00
committed by Mitchell Horne
parent d7259292ae
commit 3e9f4fd6fc
+22 -1
View File
@@ -35,7 +35,7 @@
.\" the referee document. The original Standard can be obtained online at
.\" http://www.opengroup.org/unix/online.html.
.\"
.Dd May 15, 2024
.Dd April 2, 2026
.Dt MQ_OPEN 2
.Os
.Sh NAME
@@ -282,6 +282,24 @@ and either
or
.Va mq_msgsize
was less than or equal to zero.
.It Bq Er EINVAL
.Dv O_CREAT
was specified in
.Fa oflag ,
the value of
.Fa attr
is not
.Dv NULL ,
and either
.Va mq_maxmsg
exceeds the
.Va kern.mqueue.maxmsg
sysctl limit,
or
.Va mq_msgsize
exceeds the
.Va kern.mqueue.maxmsgsize
sysctl limit.
.It Bq Er EMFILE
Too many message queue descriptors or file descriptors are currently in use
by this process.
@@ -295,6 +313,9 @@ is longer than
.Brq Dv NAME_MAX .
.It Bq Er ENFILE
Too many message queues are currently open in the system.
The system limit is controlled by the
.Va kern.mqueue.maxmq
sysctl.
.It Bq Er ENOENT
.Dv O_CREAT
is not set and the named message queue does not exist.