}
 
 #ifdef SLAP_CONFIG_DELETE
-       ldap_pvt_thread_mutex_lock( &si->si_ops_mutex );
-       for ( so=si->si_ops, sonext=so;  so; so=sonext  ) {
-               SlapReply rs = {REP_RESULT};
-               rs.sr_err = LDAP_UNAVAILABLE;
-               send_ldap_result( so->s_op, &rs );
-               sonext=so->s_next;
-               syncprov_drop_psearch( so, 0);
-       }
-       si->si_ops=NULL;
-       ldap_pvt_thread_mutex_unlock( &si->si_ops_mutex );
+       if ( !slapd_shutdown ) {
+               for ( so=si->si_ops, sonext=so;  so; so=sonext  ) {
+                       SlapReply rs = {REP_RESULT};
+                       rs.sr_err = LDAP_UNAVAILABLE;
+                       send_ldap_result( so->s_op, &rs );
+                       sonext=so->s_next;
+                       syncprov_drop_psearch( so, 0);
+               }
+               si->si_ops=NULL;
+       }
        overlay_unregister_control( be, LDAP_CONTROL_SYNC );
 #endif /* SLAP_CONFIG_DELETE */