GOTO(clean, rc = -ENOMEM);
for (i = 0; i < BRW_LAST; i++)
- cfs_spin_lock_init(&stats->nid_brw_stats->hist[i].oh_lock);
+ spin_lock_init(&stats->nid_brw_stats->hist[i].oh_lock);
rc = lprocfs_seq_create(stats->nid_proc, "brw_stats", 0644,
&ofd_per_nid_stats_fops, stats);
{
int rc;
- cfs_spin_lock_init(&exp->exp_filter_data.fed_lock);
+ spin_lock_init(&exp->exp_filter_data.fed_lock);
CFS_INIT_LIST_HEAD(&exp->exp_filter_data.fed_mod_list);
- cfs_spin_lock(&exp->exp_lock);
+ spin_lock(&exp->exp_lock);
exp->exp_connecting = 1;
- cfs_spin_unlock(&exp->exp_lock);
+ spin_unlock(&exp->exp_lock);
/* self-export doesn't need client data and ldlm initialization */
if (unlikely(obd_uuid_equals(&exp->exp_obd->obd_uuid,
sptlrpc_target_update_exp_flavor(obd, &tmp_rset);
- cfs_write_lock(&fo->fo_sptlrpc_lock);
+ write_lock(&fo->fo_sptlrpc_lock);
sptlrpc_rule_set_free(&fo->fo_sptlrpc_rset);
fo->fo_sptlrpc_rset = tmp_rset;
- cfs_write_unlock(&fo->fo_sptlrpc_lock);
+ write_unlock(&fo->fo_sptlrpc_lock);
return 0;
}
} else if (KEY_IS(KEY_GRANT_SHRINK)) {
struct ost_body *body = val;
+ ofd_info_init(env, exp);
/** handle grant shrink, similar to a read request */
ofd_grant_prepare_read(env, exp, &body->oa);
} else {
{
int rc;
- cfs_spin_lock(&ofd->ofd_osfs_lock);
+ spin_lock(&ofd->ofd_osfs_lock);
if (cfs_time_before_64(ofd->ofd_osfs_age, max_age) || max_age == 0) {
obd_size unstable;
/* record value of inflight counter before running statfs to
* compute the diff once statfs is completed */
unstable = ofd->ofd_osfs_inflight;
- cfs_spin_unlock(&ofd->ofd_osfs_lock);
+ spin_unlock(&ofd->ofd_osfs_lock);
/* statfs can sleep ... hopefully not for too long since we can
* call it fairly often as space fills up */
if (unlikely(rc))
return rc;
- cfs_spin_lock(&ofd->ofd_grant_lock);
- cfs_spin_lock(&ofd->ofd_osfs_lock);
+ spin_lock(&ofd->ofd_grant_lock);
+ spin_lock(&ofd->ofd_osfs_lock);
/* calculate how much space was written while we released the
* ofd_osfs_lock */
unstable = ofd->ofd_osfs_inflight - unstable;
/* similarly, there is some uncertainty on write requests
* between prepare & commit */
ofd->ofd_osfs_unstable += ofd->ofd_tot_pending;
- cfs_spin_unlock(&ofd->ofd_grant_lock);
+ spin_unlock(&ofd->ofd_grant_lock);
/* finally udpate cached statfs data */
ofd->ofd_osfs = *osfs;
ofd->ofd_statfs_inflight--; /* stop tracking */
if (ofd->ofd_statfs_inflight == 0)
ofd->ofd_osfs_inflight = 0;
- cfs_spin_unlock(&ofd->ofd_osfs_lock);
+ spin_unlock(&ofd->ofd_osfs_lock);
if (from_cache)
*from_cache = 0;
} else {
/* use cached statfs data */
*osfs = ofd->ofd_osfs;
- cfs_spin_unlock(&ofd->ofd_osfs_lock);
+ spin_unlock(&ofd->ofd_osfs_lock);
if (from_cache)
*from_cache = 1;
}
{
struct ofd_thread_info *info = ofd_info(env);
struct lustre_handle lockh;
- int flags = LDLM_AST_DISCARD_DATA, rc = 0;
+ __u64 flags = LDLM_AST_DISCARD_DATA, rc = 0;
ldlm_policy_data_t policy = {
.l_extent = { 0, OBD_OBJECT_EOF }
};
rc = ldlm_cli_enqueue_local(ofd->ofd_namespace, &info->fti_resid,
LDLM_EXTENT, &policy, LCK_PW, &flags,
ldlm_blocking_ast, ldlm_completion_ast,
- NULL, NULL, 0, NULL, &lockh);
+ NULL, NULL, 0, LVB_T_NONE, NULL, &lockh);
/* We only care about the side-effects, just drop the lock. */
if (rc == ELDLM_OK)
skip_orphan = !!(exp->exp_connect_flags & OBD_CONNECT_SKIP_ORPHAN);
last = ofd_last_id(ofd, oa->o_seq);
- CWARN("%s: deleting orphan objects from "LPU64" to "LPU64"\n",
- ofd_obd(ofd)->obd_name, oa->o_id + 1, last);
+ LCONSOLE_INFO("%s: deleting orphan objects from "LPU64" to "LPU64"\n",
+ ofd_obd(ofd)->obd_name, oa->o_id + 1, last);
for (oi.oi_id = last; oi.oi_id > oa->o_id; oi.oi_id--) {
fid_ostid_unpack(&info->fti_fid, &oi, 0);
GOTO(out_nolock, rc = 0);
}
/* This causes inflight precreates to abort and drop lock */
- cfs_set_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
- cfs_mutex_lock(&ofd->ofd_create_locks[oa->o_seq]);
- if (!cfs_test_bit(oa->o_seq, &ofd->ofd_destroys_in_progress)) {
+ set_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
+ mutex_lock(&ofd->ofd_create_locks[oa->o_seq]);
+ if (!test_bit(oa->o_seq, &ofd->ofd_destroys_in_progress)) {
CERROR("%s:["LPU64"] destroys_in_progress already cleared\n",
exp->exp_obd->obd_name, oa->o_seq);
GOTO(out, rc = 0);
rc = 0;
} else if (diff < 0) {
rc = ofd_orphans_destroy(env, exp, ofd, oa);
- cfs_clear_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
+ clear_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
} else {
/* XXX: Used by MDS for the first time! */
- cfs_clear_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
+ clear_bit(oa->o_seq, &ofd->ofd_destroys_in_progress);
}
} else {
- cfs_mutex_lock(&ofd->ofd_create_locks[oa->o_seq]);
+ mutex_lock(&ofd->ofd_create_locks[oa->o_seq]);
if (oti->oti_conn_cnt < exp->exp_conn_cnt) {
CERROR("%s: dropping old precreate request\n",
ofd_obd(ofd)->obd_name);
created, diff + created,
created / DISK_TIMEOUT);
break;
- }
+ }
rc = ofd_precreate_objects(env, ofd, next_id,
oa->o_seq, count);
ofd_info2oti(info, oti);
out:
- cfs_mutex_unlock(&ofd->ofd_create_locks[oa->o_seq]);
+ mutex_unlock(&ofd->ofd_create_locks[oa->o_seq]);
out_nolock:
if (rc == 0 && ea != NULL) {
struct lov_stripe_md *lsm = *ea;
return !!rc;
}
-static int ofd_obd_notify(struct obd_device *obd, struct obd_device *unused,
- enum obd_notify_event ev, void *data)
-{
- switch (ev) {
- case OBD_NOTIFY_CONFIG:
- LASSERT(obd->obd_no_conn);
- cfs_spin_lock(&obd->obd_dev_lock);
- obd->obd_no_conn = 0;
- cfs_spin_unlock(&obd->obd_dev_lock);
- break;
- default:
- CDEBUG(D_INFO, "%s: Unhandled notification %#x\n",
- obd->obd_name, ev);
- }
- return 0;
-}
-
/*
* Handle quota control requests to consult current usage/limit.
*
.o_precleanup = ofd_precleanup,
.o_ping = ofd_ping,
.o_health_check = ofd_health_check,
- .o_notify = ofd_obd_notify,
.o_quotactl = ofd_quotactl,
};