case OBD_NOTIFY_CONFIG:
rc = md_do_upcall(NULL, &mdd->mdd_md_dev, MD_LOV_CONFIG);
break;
+#ifdef HAVE_QUOTA_SUPPORT
+ case OBD_NOTIFY_QUOTA:
+ rc = md_do_upcall(NULL, &mdd->mdd_md_dev, MD_LOV_QUOTA);
+ break;
+#endif
default:
CDEBUG(D_INFO, "Unhandled notification %#x\n", ev);
}
RETURN(rc);
obd_free_memmd(lov_exp, &lsm);
- rc = mdd_xattr_set_txn(env, obj, buf, MDS_LOV_MD_NAME, 0, handle);
+ rc = mdd_xattr_set_txn(env, obj, buf, XATTR_NAME_LOV, 0, handle);
CDEBUG(D_INFO, "set lov ea of "DFID" rc %d \n", PFID(mdo2fid(obj)), rc);
RETURN(rc);
lum->lmm_stripe_offset == (typeof(lum->lmm_stripe_offset))(-1) &&
lum->lmm_magic != LOV_USER_MAGIC_V3) {
rc = mdd_xattr_set_txn(env, obj, &LU_BUF_NULL,
- MDS_LOV_MD_NAME, 0, handle);
+ XATTR_NAME_LOV, 0, handle);
if (rc == -ENODATA)
rc = 0;
CDEBUG(D_INFO, "delete lov ea of "DFID" rc %d \n",
rc = mdd_lov_set_stripe_md(env, child, buf, handle);
} else {
rc = mdd_xattr_set_txn(env, child, buf,
- MDS_LOV_MD_NAME, 0, handle);
+ XATTR_NAME_LOV, 0, handle);
}
} else if (S_ISDIR(mode)) {
if (lmmp == NULL && lmm_size == 0) {
/* Get parent dir stripe and set */
if (pobj != NULL)
rc = mdd_get_md_locked(env, pobj, lmm, &size,
- MDS_LOV_MD_NAME);
+ XATTR_NAME_LOV);
if (rc > 0) {
buf = mdd_buf_get(env, lmm, size);
rc = mdd_xattr_set_txn(env, child, buf,
- MDS_LOV_MD_NAME, 0, handle);
+ XATTR_NAME_LOV, 0, handle);
if (rc)
CERROR("error on copy stripe info: rc "
"= %d\n", rc);
int rc = 0;
ENTRY;
- if (!md_should_create(create_flags))
+ if (!md_should_create(create_flags)) {
+ *lmm_size = 0;
RETURN(0);
-
+ }
oti_init(oti, NULL);
/* replay case, has objects already, only get lov from eadata */
rc = mdd_get_md_locked(env, parent, _lmm,
&_lmm_size,
- MDS_LOV_MD_NAME);
+ XATTR_NAME_LOV);
if (rc > 0)
rc = obd_iocontrol(OBD_IOC_LOV_SETSTRIPE,
- lov_exp, 0, &lsm, _lmm);
+ lov_exp, *lmm_size,
+ &lsm, _lmm);
+
if (rc)
GOTO(out_oti, rc);
}
+ OBD_FAIL_TIMEOUT(OBD_FAIL_MDS_OPEN_WAIT_CREATE, 10);
rc = obd_create(lov_exp, oa, &lsm, oti);
if (rc) {
if (rc > 0) {
/* get lov ea */
rc = mdd_get_md_locked(env, obj, ma->ma_lmm, &ma->ma_lmm_size,
- MDS_LOV_MD_NAME);
+ XATTR_NAME_LOV);
if (rc <= 0) {
CWARN("Get lov ea failed for "DFID" rc = %d\n",
if ((ma->ma_cookie_size > 0) &&
(mdd_log_op_unlink(obd, ma->ma_lmm, ma->ma_lmm_size,
ma->ma_cookie, ma->ma_cookie_size) > 0)) {
+ CDEBUG(D_HA, "DEBUG: unlink log is added for object "DFID"\n",
+ PFID(mdd_object_fid(mdd_cobj)));
ma->ma_valid |= MA_COOKIE;
}
return 0;