dt_txn_hook_commit(th);
/* call per-transaction callbacks if any */
- cfs_list_for_each_entry_safe(dcb, tmp, &oh->ot_dcb_list, dcb_linkage)
+ list_for_each_entry_safe(dcb, tmp, &oh->ot_dcb_list, dcb_linkage)
dcb->dcb_func(NULL, th, dcb, error);
/* Unlike ldiskfs, zfs updates space accounting at commit time.
struct osd_thandle *oh;
oh = container_of0(th, struct osd_thandle, ot_super);
- cfs_list_add(&dcb->dcb_linkage, &oh->ot_dcb_list);
+ list_add(&dcb->dcb_linkage, &oh->ot_dcb_list);
return 0;
}
}
oh->ot_tx = tx;
- CFS_INIT_LIST_HEAD(&oh->ot_dcb_list);
- CFS_INIT_LIST_HEAD(&oh->ot_sa_list);
+ INIT_LIST_HEAD(&oh->ot_dcb_list);
+ INIT_LIST_HEAD(&oh->ot_sa_list);
sema_init(&oh->ot_sa_lock, 1);
memset(&oh->ot_quota_trans, 0, sizeof(oh->ot_quota_trans));
th = &oh->ot_super;
struct osd_thandle {
struct thandle ot_super;
- cfs_list_t ot_dcb_list;
- cfs_list_t ot_sa_list;
+ struct list_head ot_dcb_list;
+ struct list_head ot_sa_list;
struct semaphore ot_sa_lock;
dmu_tx_t *ot_tx;
struct lquota_trans ot_quota_trans;
uint64_t *os_compat_dirs;
int os_subdir_count; /* subdir count for each seq */
obd_seq os_seq; /* seq number */
- cfs_list_t os_seq_list; /* list to seq_list */
+ struct list_head os_seq_list; /* list to seq_list */
};
struct osd_seq_list {
- rwlock_t osl_seq_list_lock; /* lock for seq_list */
- cfs_list_t osl_seq_list; /* list head for seq */
+ rwlock_t osl_seq_list_lock; /* lock for seq_list */
+ struct list_head osl_seq_list; /* list head for seq */
struct semaphore osl_seq_init_sem;
};
unsigned long od_capa_timeout;
__u32 od_capa_alg;
struct lustre_capa_key *od_capa_keys;
- cfs_hlist_head_t *od_capa_hash;
+ struct hlist_head *od_capa_hash;
cfs_proc_dir_entry_t *od_proc_entry;
struct lprocfs_stats *od_stats;
dmu_buf_t *oo_db;
sa_handle_t *oo_sa_hdl;
nvlist_t *oo_sa_xattr;
- cfs_list_t oo_sa_linkage;
+ struct list_head oo_sa_linkage;
struct rw_semaphore oo_sem;
static void
osd_object_sa_dirty_add(struct osd_object *obj, struct osd_thandle *oh)
{
- if (!cfs_list_empty(&obj->oo_sa_linkage))
+ if (!list_empty(&obj->oo_sa_linkage))
return;
down(&oh->ot_sa_lock);
write_lock(&obj->oo_attr_lock);
- if (likely(cfs_list_empty(&obj->oo_sa_linkage)))
- cfs_list_add(&obj->oo_sa_linkage, &oh->ot_sa_list);
+ if (likely(list_empty(&obj->oo_sa_linkage)))
+ list_add(&obj->oo_sa_linkage, &oh->ot_sa_list);
write_unlock(&obj->oo_attr_lock);
up(&oh->ot_sa_lock);
}
struct osd_object *obj;
down(&oh->ot_sa_lock);
- while (!cfs_list_empty(&oh->ot_sa_list)) {
- obj = cfs_list_entry(oh->ot_sa_list.next,
+ while (!list_empty(&oh->ot_sa_list)) {
+ obj = list_entry(oh->ot_sa_list.next,
struct osd_object, oo_sa_linkage);
sa_spill_rele(obj->oo_sa_hdl);
write_lock(&obj->oo_attr_lock);
- cfs_list_del_init(&obj->oo_sa_linkage);
+ list_del_init(&obj->oo_sa_linkage);
write_unlock(&obj->oo_attr_lock);
}
up(&oh->ot_sa_lock);
dt_object_init(&mo->oo_dt, NULL, d);
mo->oo_dt.do_ops = &osd_obj_ops;
l->lo_ops = &osd_lu_obj_ops;
- CFS_INIT_LIST_HEAD(&mo->oo_sa_linkage);
+ INIT_LIST_HEAD(&mo->oo_sa_linkage);
init_rwsem(&mo->oo_sem);
sema_init(&mo->oo_guard, 1);
rwlock_init(&mo->oo_attr_lock);
obj->oo_sa_xattr = NULL;
}
sa_buf_rele(obj->oo_db, osd_obj_tag);
- cfs_list_del(&obj->oo_sa_linkage);
+ list_del(&obj->oo_sa_linkage);
obj->oo_db = NULL;
}
}
{
struct osd_seq *osd_seq;
- cfs_list_for_each_entry(osd_seq, &seq_list->osl_seq_list, os_seq_list) {
+ list_for_each_entry(osd_seq, &seq_list->osl_seq_list, os_seq_list) {
if (osd_seq->os_seq == seq)
return osd_seq;
}
if (osd_seq == NULL)
GOTO(out, rc = -ENOMEM);
- CFS_INIT_LIST_HEAD(&osd_seq->os_seq_list);
+ INIT_LIST_HEAD(&osd_seq->os_seq_list);
osd_seq->os_seq = seq;
/* Init subdir count to be 32, but each seq can have
}
write_lock(&seq_list->osl_seq_list_lock);
- cfs_list_add(&osd_seq->os_seq_list, &seq_list->osl_seq_list);
+ list_add(&osd_seq->os_seq_list, &seq_list->osl_seq_list);
write_unlock(&seq_list->osl_seq_list_lock);
out:
up(&seq_list->osl_seq_init_sem);
{
struct osd_seq_list *osl = &osd->od_seq_list;
- CFS_INIT_LIST_HEAD(&osl->osl_seq_list);
+ INIT_LIST_HEAD(&osl->osl_seq_list);
rwlock_init(&osl->osl_seq_list_lock);
sema_init(&osl->osl_seq_init_sem, 1);
}
struct osd_seq *osd_seq, *tmp;
write_lock(&osl->osl_seq_list_lock);
- cfs_list_for_each_entry_safe(osd_seq, tmp, &osl->osl_seq_list,
- os_seq_list) {
- cfs_list_del(&osd_seq->os_seq_list);
+ list_for_each_entry_safe(osd_seq, tmp, &osl->osl_seq_list,
+ os_seq_list) {
+ list_del(&osd_seq->os_seq_list);
OBD_FREE(osd_seq->os_compat_dirs,
sizeof(uint64_t) * osd_seq->os_subdir_count);
OBD_FREE(osd_seq, sizeof(*osd_seq));