[Date Prev][Date Next]
(ITS#3793) thread_pool initialization in tools
Full_Name: Donn Cave
OS: NetBSD 2.0
Submission from: (NULL) (22.214.171.124)
In slapadd, ldap_pvt_thread_pool_init uses ldap_pvt_thread_pool_mutex before it
has been initialized. That initialization would have happened in
ldap_int_thread_pool_startup(), called by ldap_pvt_thread_initialize(), but in
fact the latter is only called in slapd/main.c after the tool function branch
around line 279 (so only in slapd.)
What works for me is to move ldap_pvt_thread_initialize() to init.c:slap_init(),
so it will be called along with ldap_pvt_thread_pool_init().
NetBSD's pthread_mutex_unlock() aborts if the mutex was never initialized.