struct lov_obd *lov = &obd->u.lov;
/* nobody gets through here until lov_putref is done */
- cfs_mutex_down(&lov->lov_lock);
+ cfs_mutex_lock(&lov->lov_lock);
cfs_atomic_inc(&lov->lov_refcount);
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
return;
}
{
struct lov_obd *lov = &obd->u.lov;
- cfs_mutex_down(&lov->lov_lock);
+ cfs_mutex_lock(&lov->lov_lock);
/* ok to dec to 0 more than once -- ltd_exp's will be null */
if (cfs_atomic_dec_and_test(&lov->lov_refcount) && lov->lov_death_row) {
CFS_LIST_HEAD(kill);
lov->lov_tgts[i] = NULL;
lov->lov_death_row--;
}
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
cfs_list_for_each_entry_safe(tgt, n, &kill, ltd_kill) {
cfs_list_del(&tgt->ltd_kill);
__lov_del_obd(obd, tgt);
}
} else {
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
}
}
if (tgt_obd == NULL)
RETURN(-EINVAL);
- cfs_mutex_down(&lov->lov_lock);
+ cfs_mutex_lock(&lov->lov_lock);
if ((index < lov->lov_tgt_size) && (lov->lov_tgts[index] != NULL)) {
tgt = lov->lov_tgts[index];
CERROR("UUID %s already assigned at LOV target index %d\n",
obd_uuid2str(&tgt->ltd_uuid), index);
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
RETURN(-EEXIST);
}
newsize = newsize << 1;
OBD_ALLOC(newtgts, sizeof(*newtgts) * newsize);
if (newtgts == NULL) {
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
RETURN(-ENOMEM);
}
OBD_ALLOC_PTR(tgt);
if (!tgt) {
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
RETURN(-ENOMEM);
}
rc = lov_ost_pool_add(&lov->lov_packed, index, lov->lov_tgt_size);
if (rc) {
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
OBD_FREE_PTR(tgt);
RETURN(rc);
}
if (index >= lov->desc.ld_tgt_count)
lov->desc.ld_tgt_count = index + 1;
- cfs_mutex_up(&lov->lov_lock);
+ cfs_mutex_unlock(&lov->lov_lock);
CDEBUG(D_CONFIG, "idx=%d ltd_gen=%d ld_tgt_count=%d\n",
index, tgt->ltd_gen, lov->desc.ld_tgt_count);
lov->desc = *desc;
lov->lov_tgt_size = 0;
- cfs_sema_init(&lov->lov_lock, 1);
+ cfs_mutex_init(&lov->lov_lock);
cfs_atomic_set(&lov->lov_refcount, 0);
CFS_INIT_LIST_HEAD(&lov->lov_qos.lq_oss_list);
cfs_init_rwsem(&lov->lov_qos.lq_rw_sem);