* GPL HEADER END
*/
/*
- * Copyright (c) 2012, Intel Corporation.
+ * Copyright (c) 2012, 2013, Intel Corporation.
* Use is subject to license terms.
*
* Author: Johann Lombardi <johann.lombardi@intel.com>
/* qsd_exp should now be valid */
LASSERT(qsd->qsd_exp);
- /* grab reference on namespace */
- ldlm_namespace_get(class_exp2obd(qsd->qsd_exp)->obd_namespace);
qsd->qsd_ns = class_exp2obd(qsd->qsd_exp)->obd_namespace;
write_lock(&qsd->qsd_lock);
qsd_stop_reint_thread(qsd->qsd_type_array[qtype]);
}
- /* release reference on namespace */
if (qsd->qsd_ns != NULL) {
- ldlm_namespace_put(qsd->qsd_ns);
qsd->qsd_ns = NULL;
}
/* deregister connection to the quota master */
qsd->qsd_exp_valid = false;
- lustre_deregister_osp_item(&qsd->qsd_exp);
+ lustre_deregister_lwp_item(&qsd->qsd_exp);
/* release per-filesystem information */
if (qsd->qsd_fsinfo != NULL) {
qsd->qsd_started = false;
/* copy service name */
- strncpy(qsd->qsd_svname, svname, MAX_OBD_NAME);
+ if (strlcpy(qsd->qsd_svname, svname, sizeof(qsd->qsd_svname))
+ >= sizeof(qsd->qsd_svname))
+ GOTO(out, rc = -E2BIG);
/* grab reference on osd device */
lu_device_get(&dev->dd_lu_dev);
}
/* generate osp name */
- rc = tgt_name2ospname((char *)qsd->qsd_svname, qti->qti_buf);
+ rc = tgt_name2lwpname((char *)qsd->qsd_svname, qti->qti_buf);
if (rc) {
CERROR("%s: failed to generate ospname (%d)\n",
qsd->qsd_svname, rc);
/* the connection callback will start the reintegration
* procedure if quota is enabled */
- rc = lustre_register_osp_item(qti->qti_buf, &qsd->qsd_exp,
+ rc = lustre_register_lwp_item(qti->qti_buf, &qsd->qsd_exp,
qsd_conn_callback, (void *)qsd);
if (rc) {
CERROR("%s: fail to get connection to master (%d)\n",