On 2004.05.21, Fen Tamanaha <[EMAIL PROTECTED]> wrote:
> We're seeing the dead thread problem under SuSE 7.3 (Linux
> 2.4.10-64GB-SMP) and 8.1 (2.4.19-64GB-SMP), but not under 9.0
> (2.4.21-99-smp4G) or Solaris.
You're seeing the dead threads even after applying the patch to
nsd/unix.c that I sent you?
Interesting that on 9.0 you don't see it. What version of pthreads is
installed on each (7.3, 8.1 and 9.0) -- what's the output of the
following command on all three versions:
$ ls -l /lib/libpthread.so*
> I merged the pertinent changes from the Arsdigita patch into
> "nsd/unix.c". It doesn't look as clean as your patch, but it does
> result in the server exiting/crashing completely without a lingering
> thread. I've attached a diff of these changes.
Really? It makes the server exit/crash even on 7.3 and 8.1? The only
difference is that my version of the signal handler does an abort()
(which, should cause a raise(SIBABRT) afterwards) while the ArsDigita
version simply does a raise(SIGKILL).
We could test to see if that's the important factor: take my patch,
change the following lines:
abort();
exit(1);
to the following:
raise(SIGKILL);
and see if that does what we're trying to accomplish.
I imagine doing a raise(SIGKILL) won't trigger a coredump, which is
annoying. I wonder if changing the code to read:
abort();
raise(SIGKILL);
exit(1);
would achieve the right results. Probably not ...
> As soon as I've finished sanitizing our AOLserver config file,
> I'll pass that along, too.
It may not be relevant after what you've said about the behavior of the
ArsDigita patch ... at this point I'm guessing it might have to do with
pthreads on the older SuSE versions not handling the SIGABRT exception
correctly.
-- Dossy
--
Dossy Shiobara mail: [EMAIL PROTECTED]
Panoptic Computer Network web: http://www.panoptic.com/
"He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)
--
AOLserver - http://www.aolserver.com/
To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of
your email blank.