Brian Pane <[EMAIL PROTECTED]> writes: > Thanks! Using b instead of ab, I was able to make the error occur > occasionally in my test environment. I found one bug that could > cause the previously accepted socket to be pushed back onto the > fdqueue if an accept failed. The change that I just committed > for unixd.c fixes this. I'm no longer seeing the segfault in my > test environment, although that's not a guarantee that the bug is > fixed, because I was only able to catch the error occasionally > before the change. With the latest unixd.c code, do you still > see the segfaults in your environment?
You're rocking my world, Brian! I first verified that I could easily hit segfaults on Solaris repeating the same test (i.e., I didn't screw up my config in the meantime), THEN I updated just unixd.c and started the same test, and now she's running like a champ (with boatloads of errors from "Too many open files" of course). The bug you found would be terrible even with a properly tuned server (connection reset between the kernel waking up Apache to do accept() and accept() inside the kernel checking the queue). -- Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site: http://www.geocities.com/SiliconValley/Park/9289/ Born in Roswell... married an alien...