Whamcloud - gitweb
LU-3963 osd-zfs: convert to linux list api 98/10898/2
authorJames Simmons <uja.ornl@gmail.com>
Mon, 30 Jun 2014 17:18:35 +0000 (13:18 -0400)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 2 Jul 2014 03:25:46 +0000 (03:25 +0000)
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 <uja.ornl@gmail.com>
Reviewed-on: http://review.whamcloud.com/10898
Tested-by: Jenkins
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/osd-zfs/osd_handler.c
lustre/osd-zfs/osd_internal.h
lustre/osd-zfs/osd_object.c
lustre/osd-zfs/osd_oi.c

index 05f51c7..66efdc9 100644 (file)
@@ -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 */
        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.
                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);
        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;
 }
 
        return 0;
 }
@@ -297,8 +297,8 @@ static struct thandle *osd_trans_create(const struct lu_env *env,
        }
 
        oh->ot_tx = tx;
        }
 
        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;
        sema_init(&oh->ot_sa_lock, 1);
        memset(&oh->ot_quota_trans, 0, sizeof(oh->ot_quota_trans));
        th = &oh->ot_super;
index 1773313..3df1af1 100644 (file)
@@ -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;
 
 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;
        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 */
        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 {
 };
 
 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;
 };
 
        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;
        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;
 
        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;
        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;
 
 
        struct rw_semaphore      oo_sem;
 
index 730671a..8ea9116 100644 (file)
@@ -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)
 {
 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);
                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);
 }
        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);
        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);
                                     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);
                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;
                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);
                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);
                        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;
        }
 }
                obj->oo_db = NULL;
        }
 }
index b805643..1e3e990 100644 (file)
@@ -270,7 +270,7 @@ static struct osd_seq *osd_seq_find_locked(struct osd_seq_list *seq_list,
 {
        struct osd_seq *osd_seq;
 
 {
        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->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);
 
        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
        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);
        }
 
        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);
        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;
 
 {
        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);
 }
        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);
        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));
                OBD_FREE(osd_seq->os_compat_dirs,
                         sizeof(uint64_t) * osd_seq->os_subdir_count);
                OBD_FREE(osd_seq, sizeof(*osd_seq));