Subject: Bugs in libmilter or threading on 3.1?
To: None <port-sparc@netbsd.org>
From: Joel Reicher <joel@panacea.null.org>
List: port-sparc
Date: 12/22/2006 14:38:51
Hi,

I recently installed 3.1 on a sparc IPX.

This machine is running as an MTA, and I've installed milter-greylist
on it.

Unfortunately the milter crashes intermittently, but as far as I can
tell the problem is not with the milter.

If I run the milter in gdb for a while, hitting ^C causes the
program to exit for a seemingly *random* reason; sometimes it's
SIGSEGV, sometimes SIGBUS, sometimes SIGILL. Worse still, the thread
that gdb is left in seems to have an invalid stack; doing a stacktrace
gives only one frame and then an unknown address.

Oh, and this is with a *statically* linked milter; the situation was
worse with a dynamically linked one. gdb really struggled in that case.

If I don't hit ^C, the milter crashes of its own accord eventually,
and usually when the load of the machine is driven up by the daily
cron job. This even occurs with a relatively braindead version of
the milter, i.e. one in which almost all the smfi registration isn't
done.

Any hints? Are there known problems with the threading or libmilter
on this port?

Thanks,

	- Joel