/* For the lfsck_lmv_unit to be handled. */
struct list_head li_list_lmv;
- atomic_t li_ref;
+ refcount_t li_ref;
atomic_t li_double_scan_count;
struct ptlrpc_thread li_thread;
struct task_struct *li_task;
static inline struct lfsck_instance *
lfsck_instance_get(struct lfsck_instance *lfsck)
{
- atomic_inc(&lfsck->li_ref);
+ refcount_inc(&lfsck->li_ref);
return lfsck;
}
static inline void lfsck_instance_put(const struct lu_env *env,
struct lfsck_instance *lfsck)
{
- if (atomic_dec_and_test(&lfsck->li_ref))
+ if (refcount_dec_and_test(&lfsck->li_ref))
lfsck_instance_cleanup(env, lfsck);
}
INIT_LIST_HEAD(&lfsck->li_list_double_scan);
INIT_LIST_HEAD(&lfsck->li_list_idle);
INIT_LIST_HEAD(&lfsck->li_list_lmv);
- atomic_set(&lfsck->li_ref, 1);
+ refcount_set(&lfsck->li_ref, 1);
atomic_set(&lfsck->li_double_scan_count, 0);
init_waitqueue_head(&lfsck->li_thread.t_ctl_waitq);
lfsck->li_out_notify = notify;