Date: Mon, 8 Jul 2002 12:52:11 -0700 (PDT) From: Pete Carah <pete@ns.altadena.net> To: stable@freebsd.org Cc: questions@freebsd.org Subject: Hang problem with spamass-milter... Message-ID: <200207081952.g68JqB55059730@ns.altadena.net>
next in thread | raw e-mail | index | archive | help
I have spamass-milter compiled and running in a fresh 4.6-stable box (built last week). If two mail messages arrive "close enough" in time, spamc hangs hard (needs kill -9 to stop it) in pipe-read state with spamass-milter in pipe-read also. I have a suspicion about read acting non-blocking in the pipe case; looking through the pthread_read.c source, as long as EWOULDBLOCK or EAGAIN work right things shouldn't act like this. Do these work right on pipes in thread context? I guess I could set up a test program... Note that spamc is not compiled thread-safe (not required here since it is started for each message). spamass-milter's configure does not make the right choices for freebsd; I presume the port fixes this (I did so myself, adding _THREAD_SAFE and -pthread). The C++ library may or may not be thread-safe? I saw a query about this same thing dated last Feb (looking at the code fragment, I suspect it was in the same program); it is still around. The hint at a fix then was "are you sure you are writing anything". Given that the identical code works fine in debian, I suspect a system problem. To me it appears to be the behavior of EWOULDBLOCK/EAGAIN with pipes in thread context. -- Pete To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200207081952.g68JqB55059730>