Date: Thu, 19 Feb 2004 20:39:26 -0800 (PST) From: Doug White <dwhite@gumbysoft.com> To: current@freebsd.org Subject: openldap server + kse = bewm Message-ID: <20040219203518.V55111@carver.gumbysoft.com>
next in thread | raw e-mail | index | archive | help
hey folks,
Looks like the OpenLDAP server, slapd, and KSE don't get along too well.
I can reliably segfault slapd by doing a few requests of it on a -CURRENT
machine built this morning PST. TLS seems to accelerate things, but it
can be done without. I have this backtrace, with a debugging libpthread,
but I'm not sure how useful it is to you folks.
This is 100% reproducible, although initially it was croaking in
pthread_testcancel() instead of a kse function. This leads me to suspect
strange mutex corruption, but I'd like someone who understands kse to at
least spot-check.
I thought at first it might be some strange interaction between berkeley
db 4.2's special assembly mutexes and kse, but I rebuilt db42 with pthread
mutexes and rebuilt openldap to use DB_PRIVATE so the db would mount, but
no change in status.
Here's the trace from gdb:
#0 0x284374a7 in kse_release () at {standard input}:15
#1 0x28431fed in kse_wait (kse=0x8102000, td_wait=0x0, sigseqno=0)
at /usr/src/lib/libpthread/thread/thr_kern.c:1816
#2 0x28430485 in kse_sched_multi (kmbx=0x0)
at /usr/src/lib/libpthread/thread/thr_kern.c:1011
#3 0x28434014 in _i386_enter_uts () at {standard input}:25
#4 0x2842fa4e in _thr_sched_switch (curthread=0x8260000)
at /usr/src/lib/libpthread/thread/thr_kern.c:596
#5 0x2842c905 in mutex_lock_common (curthread=0x8260000, m=0x810e304,
abstime=0x0) at /usr/src/lib/libpthread/thread/thr_mutex.c:555
#6 0x2842d633 in __pthread_mutex_lock (m=0x810e304)
at /usr/src/lib/libpthread/thread/thr_mutex.c:796
#7 0x2839634f in pthread_mutex_lock () from /lib/libc.so.5
#8 0x281288b3 in ldap_pvt_thread_mutex_lock ()
from /usr/local/lib/libldap_r.so.202
#9 0x28127b23 in ldap_pvt_thread_pool_submit ()
from /usr/local/lib/libldap_r.so.202
#10 0x08059d23 in ldap_str2matchingrule ()
#11 0x080599d5 in ldap_str2matchingrule ()
#12 0x08059525 in ldap_str2matchingrule ()
#13 0x08056fe5 in ldap_str2matchingrule ()
#14 0x28425595 in thread_start (curthread=0x8260000,
start_routine=0x8055a4c <ldap_str2matchingrule+34120>, arg=0x0)
at /usr/src/lib/libpthread/thread/thr_create.c:353
#15 0x283e4807 in _ctx_start () from /lib/libc.so.5
--
Doug White | FreeBSD: The Power to Serve
dwhite@gumbysoft.com | www.FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040219203518.V55111>
