Do threads conflict?
Mark
admin at asarian-host.net
Tue Oct 14 06:07:12 PDT 2003
----- Original Message -----
From: "Dan Nelson" <dnelson at allantgroup.com>
To: "Mark" <admin at asarian-host.net>
Cc: <freebsd-questions at freebsd.org>
Sent: Monday, October 13, 2003 11:38 PM
Subject: Re: Do threads conflict?
> In the last episode (Oct 13), Mark said:
>
> > I just installed Sendmail::Milter, which I believe uses the ithreads
> > model for Perl. I created my own Milter (Perl-threaded 5.8.0), and
> > everything runs fine... Except that now, when the Milter is running,
> > tinyproxy 1.5.0 goes haywire, filling up its log like crazy with this
> > message:
> >
> > "Accept returned an error (Resource temporarily unavailable)...
> > retrying."
> >
> > The only thing tinyproxy and the Milter have in common, is that they
> > both use threads.
> >
> > Is there perhaps something that prevents both programs from using
> > threads? Perhaps the threads-enabled version of the daemonized perl
> > Milter keeps a shared library locked? So, now I can run either one or
> > the other, but not both. I use this on FreeBSD 4.7R.
>
> They shouldn't conflict. That sounds like a libc_r bug; I think the
> wrapper for accept() should retry the accept() call for the user.
>
> You might want to try updating to 4.8; there were a couple of important
> commits to libc_r that fixed bugs that usually affected threaded daemons:
Thanks for the answer, Dan.
Upgrading to 4.8 is not directly possible on this production server. But can
I not just recompile the kernel with a patch?
> 2002-10-22 09:44 fjoe don't allow the uthread kernel pipe to use the same
> descriptors as stdio
This may be the one affecting me. After your hinting me to the problem, I
did some further googling; but it sounds as if 5.1 still suffers from the
same malady; for instance:
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/1588
Thanks,
- Mark
More information about the freebsd-questions
mailing list