On 2015-06-15 14:55, Aurelien Jarno wrote:
> On 2015-06-15 12:32, Tim Ruehsen wrote:
> > On Mon, 15 Jun 2015 11:55:47 +0200 Aurelien Jarno <aurel...@aurel32.net> 
> > wrote:
> > > Nothing has changed in the libc6 package for sometimes. When does the
> > > breakage started? I see you are using a 4.0 kernel, could it be due to
> > > that?
> > 
> > I made some tests on Debian VMs, that I have flying around.
> > 
> > Debian SID with 4.0 (amd64): problem as described above
> > Debian SID with 3.16 (amd64): same problem
> > Debian Wheezy with 3.2.0 (amd64): same problem
> > Debian Wheezy with 3.2.0 (i386): Works as expected (up to maxmsg=1000, with 
> > maxmsg=1001 I get errno=22 (Invalid argument) - that's fine for me, but is 
> > not 
> > what the man page says for this case.
> 
> Well it looks like it matches the manpage:
> 
> | O_CREAT was specified in oflag, and attr was not NULL, but
> | attr->mq_maxmsg or attr->mq_msqsize was invalid. In a process that is
> | unprivileged (does not have the CAP_SYS_RESOURCE capability),
> | attr->mq_maxmsg must be less than or equal to the msg_max limit, and
> | attr->mq_msgsize must be less than or equal to the msgsize_max limit.
> 
> > BTW the man page for mq_open is broken - 
> > double entries below ERRORS).
> 
> The manpage is nor provided by the glibc, but by the Linux man-pages
> project. Please report the bug there.
> > 
> > Looks like amd64 architecture has the problem since a while.
> 
> I don't really know what is the problem, but a strace shows that the
> glibc just returns the errno from the kernel.

What does "ulimit -q" returns on your system? It seems to be 819200 by
default, which is why the kernel refuses to create the message queue.

Here increasing the value allows the msg queue to be created
successfully. The way to compute the limit is described in the
getrlimit(2) manpage. Note that the value includes size of structures,
which are likely to be different on i386 and amd64, and has changed
starting with kernel 3.5. It's therefore likely that by using an
amd64 machine and a recent kernel, you crossed the 819200 limit.

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurel...@aurel32.net                 http://www.aurel32.net

Attachment: signature.asc
Description: Digital signature

Reply via email to