On Sun, May 31, 2009 at 11:23:16PM +0200,
You did it inside the xend script, didn't you?
No, I did it from the shell, then ran xend start from the same shell.
Use ktruss(1) (# ktruss -i xend), and look for the mlock()/munlock()
calls. It should not lock() more than a few pages.
ktruss does find two calls to mlock(), each for 4 kb, the total is
clearly below the ulimit:
# ktruss -i /usr/pkg/etc/rc.d/xend start |& grep lock
542 1 python2.5 opERROR Internal error: Could not lock memory for Xen hypercall (35 = Resource temporarily unavailabl)
542 1 python2.5 mlock(0xbfbf5000, 0x1000) Err#35 EAGAIN
"ERROR Internal error: Could not lock memory for Xen hypercall (35 = R"
"em into the queue.\n\n If optional args 'block' is true and 't"
806 1 python2.5 mlock(0xbfbfe000, 0x1000) Err#35 EAGAIN
"ERROR Internal error: Could not lock memory for version hypercall (35"
"(1, 'Internal error', 'Could not lock memory for version hypercall (3"