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>