jdmls at yahoo.com
Fri Jan 20 17:03:10 UTC 2012
From: Helmut Drodofsky <drodofsky at internet-xs.de>
> secpwgen is always reporting
> "mlock: Cannot allocate memory"
> even with user root.
mlock(0x7f14e3d5d000, 65536) = -1 ENOMEM (Cannot allocate memory)
The man page says:
ENOMEM (Linux 2.6.9 and later) the caller had a non-zero RLIMIT_MEMLOCK
soft resource limit, but tried to lock more memory than the
limit permitted. This limit is not enforced if the process is
# ulimit -l
Tried to raise it but still fails...
# ulimit -l 128
# ulimit -l
mlock(0x7f6c049ad000, 65536) = -1 ENOMEM (Cannot allocate memory)
The man pages also says:
ENOMEM Some of the specified address range does not correspond to
mapped pages in the address space of the process.
And finaly, the CHANGELOG says:
* Added an option to compile with mlock() instead of mlockall().
- mlockall() caused problems on some Linux 2.6 distros because it would
succeed even for ordinary users. some library component would then
try to allocate too much memory which would exceed the process'
resource limits for locked memory. being unable to allocate memory has
resulted in a crash.
Tried to compile it but it is a pain and no time right now...
More information about the CentOS