Re: Excessive threads in opendkim-2.2.2 on Solaris 10

From: Gary Mills <mills_at_cc.umanitoba.ca>
Date: Fri, 28 Jan 2011 08:15:16 -0600

On Wed, Jan 26, 2011 at 10:17:35AM -0800, Murray S. Kucherawy wrote:
> > From: opendkim-dev-bounce_at_lists.opendkim.org [mailto:opendkim-dev-bounce_at_lists.opendkim.org] On Behalf Of Gary Mills
>
> > ----------------- lwp# 2 / thread# 2 --------------------
> > feafa795 pollsys (fe94ec90, 2, fe94ed18, 0)
> > feaa3e36 pselect (7, fe94ef3c, fe94eebc, feb70300, fe94ed18, 0) + 18e
> > feaa412c select (7, fe94ef3c, fe94eebc, 0, fe94eeb0, 0) + 82
> > fef53543 ar_dispatcher (80ad880) + 453
> > feaf73b7 _thr_setup (fe840200) + 4e
> > feaf76a0 _lwp_start (fe840200, 0, 0, fe94eff8, feaf76a0, fe840200)
> > ----------------- lwp# 3 / thread# 3 --------------------
> > feafa795 pollsys (fe83ec70, 2, fe83ed18, 0)
> > feaa3e36 pselect (a, fe83ef3c, fe83eebc, feb70300, fe83ed18, 0) + 18e
> > feaa412c select (a, fe83ef3c, fe83eebc, 0, fe83eeb0, 0) + 82
> > fef53543 ar_dispatcher (80be9c8) + 453
> > feaf73b7 _thr_setup (fe840a00) + 4e
> > feaf76a0 _lwp_start (fe840a00, 0, 0, fe83eff8, feaf76a0, fe840a00)
>
> Again, this is odd. I don't know why you're seeing two different
> threads in select() inside ar_dispatcher() when opendkim only
> creates one instance.
>
> Versions prior to to 2.1.3 could instantiate libar twice, once in
> TCP mode and once in UDP mode. But if this is from 2.2.2, that
> doesn't seem to be possible.

It does seem to be the case. opendkim-2.2.2 has been running on my
test server since 16 December, always under very light load. It has
only five threads, but two of them are ar_dispatcher threads:

# pstack 714
714: opendkim -x /etc/mail/opendkim.conf
----------------- lwp# 1 / thread# 1 --------------------
 feafa795 pollsys (8036ffc, 1, 8036fb0, 0)
 fea9f8be poll (8036ffc, 1, 1388, 8075f11) + 52
 0807598b mi_listener (80adca0, 0, 80ac958, 1c2a, 80, 1) + cf
 08074d4b smfi_main (8047d74, feffb800, 0, 0, 0, 0) + 67
 0806a885 main (3, 8047db8, 8047dc8, 8047dac) + 2b95
 0805a00d _start (3, 8047e60, 8047e69, 8047e6c, 0, 8047e84) + 7d
----------------- lwp# 2 / thread# 2 --------------------
 feafa795 pollsys (fe94ec90, 2, fe94ed18, 0)
 feaa3e36 pselect (7, fe94ef3c, fe94eebc, feb70300, fe94ed18, 0) + 18e
 feaa412c select (7, fe94ef3c, fe94eebc, 0, fe94eeb0, 0) + 82
 fef53543 ar_dispatcher (80be9f0) + 453
 feaf73b7 _thr_setup (fe840200) + 4e
 feaf76a0 _lwp_start (fe840200, 0, 0, fe94eff8, feaf76a0, fe840200)
----------------- lwp# 3 / thread# 3 --------------------
 feafa795 pollsys (fe83ec70, 2, 0, 0)
 feaa3e36 pselect (a, fe83ef3c, fe83eebc, feb70300, 0, 0) + 18e
 feaa412c select (a, fe83ef3c, fe83eebc, 0, 0, 0) + 82
 fef53543 ar_dispatcher (80c1e70) + 453
 feaf73b7 _thr_setup (fe840a00) + 4e
 feaf76a0 _lwp_start (fe840a00, 0, 0, fe83eff8, feaf76a0, fe840a00)
----------------- lwp# 4 / thread# 4 --------------------
 feaf9b75 sigtimedwait (fe73fef0, fe73ff00, 0)
 feaec71d sigwait (fe73ffc0) + 1c
 feae4b82 __posix_sigwait (fe73ffc0, fe73ffd0) + 2e
 0805c43b dkimf_reloader (0) + 4b
 feaf73b7 _thr_setup (fe841200) + 4e
 feaf76a0 _lwp_start (fe841200, 0, 0, fe73fff8, feaf76a0, fe841200)
----------------- lwp# 5 / thread# 5 --------------------
 feaf9b75 sigtimedwait (fe640f00, fe640f10, 0)
 feaec71d sigwait (fe640fc0, 2, fe640fdc, feaf6ba7) + 1c
 0807705b mi_signal_thread (80abbb0) + 4b
 feaf73b7 _thr_setup (fe841a00) + 4e
 feaf76a0 _lwp_start (fe841a00, 0, 0, fe640ff8, feaf76a0, fe841a00)

-- 
-Gary Mills-        -Unix Group-        -Computer and Network Services-
Received on Fri Jan 28 2011 - 14:15:27 PST

This archive was generated by hypermail 2.3.0 : Mon Oct 29 2012 - 23:33:08 PST