Quote:>On a server built from a 1.3b6-dev source about 3 weeks ago running on
>IRIX 6.2, tonight the server would not start. Nothing. Just this in the
>error log
> semget: No space left on device
>(can't be referring to disk space, file systems have plenty...)
>So it's just about time to ask, "Why is this night different from any
>other night? This httpd started fine on all of the prior 20 or so prior
>nights but on this one we must reboot."
It doesn't like you.
What is happening is that Apache is trying to use SYSV semaphores
for accept locking, but IRIX don't wanna give Apache any.
This could happen for several reasons. It could be a kernel bug in
IRIX causing them to get lost after a while. Or it could be a bug
in Apache causing them to not get removed properly. Unless you are
kill -9ing the server without giving it a chance to exit properly...
An "ipcs -s" should list the semaphores, and if you need to fix it up
without rebooting ipcrm should be able to manually remove old stale
semaphores.
If you add "-USE_FCNTL_SERIALIZED_ACCEPT" to the EXTRA_CFLAGS line
in your Configuration file, that should avoid the problem but will
impose a performance penalty of some amount.
You could give USE_USLOCK_SERIALIZED_ACCEPT a try if you have a
multiprocessor box, but it may not work right either.