be->be_pcl_mutexp superseded by be->bd_self

This commit is contained in:
Howard Chu 2008-11-02 07:58:50 +00:00
parent ad8180b3b9
commit a8658c742e
6 changed files with 11 additions and 26 deletions

View File

@ -594,8 +594,7 @@ backend_db_init(
be->be_requires = frontendDB->be_requires;
be->be_ssf_set = frontendDB->be_ssf_set;
be->be_pcl_mutexp = &be->be_pcl_mutex;
ldap_pvt_thread_mutex_init( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_init( &be->be_pcl_mutex );
/* assign a default depth limit for alias deref */
be->be_max_deref_depth = SLAPD_DEFAULT_MAXDEREFDEPTH;

View File

@ -43,7 +43,7 @@ slap_get_commit_csn(
BER_BVZERO( maxcsn );
}
ldap_pvt_thread_mutex_lock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_lock( &be->be_pcl_mutex );
LDAP_TAILQ_FOREACH( csne, be->be_pending_csn_list, ce_csn_link ) {
if ( csne->ce_opid == op->o_opid && csne->ce_connid == op->o_connid ) {
@ -58,7 +58,7 @@ slap_get_commit_csn(
}
if ( committed_csne && maxcsn ) *maxcsn = committed_csne->ce_csn;
ldap_pvt_thread_mutex_unlock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_unlock( &be->be_pcl_mutex );
}
void
@ -67,7 +67,7 @@ slap_rewind_commit_csn( Operation *op )
struct slap_csn_entry *csne;
BackendDB *be = op->o_bd->bd_self;
ldap_pvt_thread_mutex_lock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_lock( &be->be_pcl_mutex );
LDAP_TAILQ_FOREACH( csne, be->be_pending_csn_list, ce_csn_link ) {
if ( csne->ce_opid == op->o_opid && csne->ce_connid == op->o_connid ) {
@ -76,7 +76,7 @@ slap_rewind_commit_csn( Operation *op )
}
}
ldap_pvt_thread_mutex_unlock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_unlock( &be->be_pcl_mutex );
}
void
@ -89,15 +89,7 @@ slap_graduate_commit_csn( Operation *op )
if ( op->o_bd == NULL ) return;
be = op->o_bd->bd_self;
#if 0
/* it is NULL when we get here from the frontendDB;
* alternate fix: initialize frontendDB like all other backends */
assert( op->o_bd->be_pcl_mutexp != NULL );
#endif
if ( be->be_pcl_mutexp == NULL ) return;
ldap_pvt_thread_mutex_lock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_lock( &be->be_pcl_mutex );
LDAP_TAILQ_FOREACH( csne, be->be_pending_csn_list, ce_csn_link ) {
if ( csne->ce_opid == op->o_opid && csne->ce_connid == op->o_connid ) {
@ -114,7 +106,7 @@ slap_graduate_commit_csn( Operation *op )
}
}
ldap_pvt_thread_mutex_unlock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_unlock( &be->be_pcl_mutex );
return;
}
@ -172,7 +164,7 @@ slap_queue_csn(
Debug( LDAP_DEBUG_SYNC, "slap_queue_csn: queing %p %s\n", csn->bv_val, csn->bv_val, 0 );
ldap_pvt_thread_mutex_lock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_lock( &be->be_pcl_mutex );
ber_dupbv( &pending->ce_csn, csn );
ber_bvreplace_x( &op->o_csn, &pending->ce_csn, op->o_tmpmemctx );
@ -181,7 +173,7 @@ slap_queue_csn(
pending->ce_state = SLAP_CSN_PENDING;
LDAP_TAILQ_INSERT_TAIL( be->be_pending_csn_list,
pending, ce_csn_link );
ldap_pvt_thread_mutex_unlock( be->be_pcl_mutexp );
ldap_pvt_thread_mutex_unlock( &be->be_pcl_mutex );
}
int

View File

@ -108,11 +108,7 @@ frontend_init( void )
frontendDB->be_def_limit.lms_s_pr_hide = 0; /* don't hide number of entries left */
frontendDB->be_def_limit.lms_s_pr_total = 0; /* number of total entries returned by pagedResults equal to hard limit */
#if 0
/* FIXME: do we need this? */
frontendDB->be_pcl_mutexp = &frontendDB->be_pcl_mutex;
ldap_pvt_thread_mutex_init( frontendDB->be_pcl_mutexp );
#endif
ldap_pvt_thread_mutex_init( &frontendDB->be_pcl_mutex );
/* suffix */
frontendDB->be_suffix = ch_calloc( 2, sizeof( struct berval ) );

View File

@ -3145,7 +3145,7 @@ pcache_db_init(
cm->db = *be;
SLAP_DBFLAGS(&cm->db) |= SLAP_DBFLAG_NO_SCHEMA_CHECK;
cm->db.be_private = NULL;
cm->db.be_pcl_mutexp = &cm->db.be_pcl_mutex;
cm->db.bd_self = &cm->db;
cm->qm = qm;
cm->numattrsets = 0;
cm->num_entries_limit = 5;

View File

@ -1268,7 +1268,6 @@ static int translucent_db_init(BackendDB *be, ConfigReply *cr) {
on->on_bi.bi_private = ov;
ov->db = *be;
ov->db.be_private = NULL;
ov->db.be_pcl_mutexp = &ov->db.be_pcl_mutex;
ov->defer_db_open = 1;
if ( !backend_db_init( "ldap", &ov->db, -1, NULL )) {

View File

@ -1895,7 +1895,6 @@ struct BackendDB {
BerVarray be_update_refs; /* where to refer modifying clients to */
struct be_pcl *be_pending_csn_list;
ldap_pvt_thread_mutex_t be_pcl_mutex;
ldap_pvt_thread_mutex_t *be_pcl_mutexp;
struct syncinfo_s *be_syncinfo; /* For syncrepl */
void *be_pb; /* Netscape plugin */