From a82badbac030338950e38d168ad4b84aaf6f58b6 Mon Sep 17 00:00:00 2001 From: James Simmons Date: Mon, 30 Jun 2014 13:18:35 -0400 Subject: [PATCH 1/1] LU-3963 osd-zfs: convert to linux list api Move from the cfs_[h]list api to the native linux api for all the code related to osd-zfs . Change-Id: If6cece695c744309e39165086e3ac791fa534ede Signed-off-by: James Simmons Reviewed-on: http://review.whamcloud.com/10898 Tested-by: Jenkins Reviewed-by: Bob Glossman Tested-by: Maloo Reviewed-by: Alex Zhuravlev Reviewed-by: Oleg Drokin --- lustre/osd-zfs/osd_handler.c | 8 ++++---- lustre/osd-zfs/osd_internal.h | 14 +++++++------- lustre/osd-zfs/osd_object.c | 16 ++++++++-------- lustre/osd-zfs/osd_oi.c | 14 +++++++------- 4 files changed, 26 insertions(+), 26 deletions(-) diff --git a/lustre/osd-zfs/osd_handler.c b/lustre/osd-zfs/osd_handler.c index 05f51c7..66efdc9 100644 --- a/lustre/osd-zfs/osd_handler.c +++ b/lustre/osd-zfs/osd_handler.c @@ -148,7 +148,7 @@ static void osd_trans_commit_cb(void *cb_data, int error) 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. @@ -173,7 +173,7 @@ static int osd_trans_cb_add(struct thandle *th, struct dt_txn_commit_cb *dcb) 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; } @@ -297,8 +297,8 @@ static struct thandle *osd_trans_create(const struct lu_env *env, } 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; diff --git a/lustre/osd-zfs/osd_internal.h b/lustre/osd-zfs/osd_internal.h index 1773313..3df1af1 100644 --- a/lustre/osd-zfs/osd_internal.h +++ b/lustre/osd-zfs/osd_internal.h @@ -192,8 +192,8 @@ static inline struct osd_thread_info *osd_oti_get(const struct lu_env *env) 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; @@ -215,12 +215,12 @@ struct osd_seq { 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; }; @@ -242,7 +242,7 @@ struct osd_device { 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; @@ -296,7 +296,7 @@ struct osd_object { 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; diff --git a/lustre/osd-zfs/osd_object.c b/lustre/osd-zfs/osd_object.c index 730671a..8ea9116 100644 --- a/lustre/osd-zfs/osd_object.c +++ b/lustre/osd-zfs/osd_object.c @@ -117,13 +117,13 @@ osd_object_sa_init(struct osd_object *obj, udmu_objset_t *uos) 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); } @@ -136,12 +136,12 @@ void osd_object_sa_dirty_rele(struct osd_thandle *oh) 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); @@ -294,7 +294,7 @@ struct lu_object *osd_object_alloc(const struct lu_env *env, 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); @@ -674,7 +674,7 @@ static void osd_object_delete(const struct lu_env *env, struct lu_object *l) 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; } } diff --git a/lustre/osd-zfs/osd_oi.c b/lustre/osd-zfs/osd_oi.c index b805643..1e3e990 100644 --- a/lustre/osd-zfs/osd_oi.c +++ b/lustre/osd-zfs/osd_oi.c @@ -270,7 +270,7 @@ static struct osd_seq *osd_seq_find_locked(struct osd_seq_list *seq_list, { 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; } @@ -317,7 +317,7 @@ static struct osd_seq *osd_find_or_add_seq(const struct lu_env *env, 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 @@ -349,7 +349,7 @@ static struct osd_seq *osd_find_or_add_seq(const struct lu_env *env, } 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); @@ -625,7 +625,7 @@ static void osd_ost_seq_init(const struct lu_env *env, struct osd_device *osd) { 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); } @@ -636,9 +636,9 @@ static void osd_ost_seq_fini(const struct lu_env *env, struct osd_device *osd) 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)); -- 1.8.3.1