{
struct mdt_device *mdt = info->mti_mdt;
struct md_device *next = mdt->mdt_child;
- struct mdt_body *body;
+ struct mdt_body *repbody;
int rc;
ENTRY;
if (MDT_FAIL_CHECK(OBD_FAIL_MDS_GETSTATUS_PACK))
RETURN(err_serious(-ENOMEM));
- body = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
- rc = next->md_ops->mdo_root_get(info->mti_env, next, &body->fid1);
+ repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
+ rc = next->md_ops->mdo_root_get(info->mti_env, next, &repbody->fid1);
if (rc != 0)
RETURN(rc);
- body->valid |= OBD_MD_FLID;
+ repbody->valid |= OBD_MD_FLID;
if (mdt->mdt_opts.mo_mds_capa) {
struct mdt_object *root;
struct lustre_capa *capa;
- root = mdt_object_find(info->mti_env, mdt, &body->fid1);
+ root = mdt_object_find(info->mti_env, mdt, &repbody->fid1);
if (IS_ERR(root))
RETURN(PTR_ERR(root));
0);
mdt_object_put(info->mti_env, root);
if (rc == 0)
- body->valid |= OBD_MD_FLMDSCAPA;
+ repbody->valid |= OBD_MD_FLMDSCAPA;
}
RETURN(rc);
RETURN(err_serious(-ENOMEM));
repbody = req_capsule_server_get(pill, &RMF_MDT_BODY);
- repbody->eadatasize = 0;
- repbody->aclsize = 0;
if (reqbody->valid & OBD_MD_MEA) {
/* Assumption: MDT_MD size is enough for lmv size FIXME */
{
struct mdt_object *obj = info->mti_object;
struct mdt_body *reqbody;
+ struct mdt_body *repbody;
int rc;
ENTRY;
reqbody = req_capsule_client_get(&info->mti_pill, &RMF_MDT_BODY);
- if (reqbody == NULL)
- GOTO(out, rc = -EFAULT);
+ LASSERT(reqbody);
+ repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
+ LASSERT(repbody);
+ repbody->eadatasize = 0;
+ repbody->aclsize = 0;
if (reqbody->valid & OBD_MD_FLOSSCAPA) {
rc = mdt_renew_capa(info);
{
struct mdt_lock_handle *lhc = &info->mti_lh[MDT_LH_CHILD];
struct mdt_body *reqbody;
+ struct mdt_body *repbody;
int rc;
ENTRY;
reqbody = req_capsule_client_get(&info->mti_pill, &RMF_MDT_BODY);
- if (reqbody == NULL)
- GOTO(out, rc = err_serious(-EFAULT));
+ LASSERT(reqbody);
+ repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
+ LASSERT(repbody);
+ repbody->eadatasize = 0;
+ repbody->aclsize = 0;
rc = mdt_init_ucred(info, reqbody);
if (rc)
struct req_capsule *pill = &info->mti_pill;
struct mdt_device *mdt = info->mti_mdt;
struct ptlrpc_request *req = mdt_info_req(info);
+ struct mdt_body *repbody;
int rc;
ENTRY;
CERROR("Can't pack response, rc %d\n", rc);
RETURN(err_serious(rc));
}
+
+ if (req_capsule_has_field(pill, &RMF_MDT_BODY, RCL_SERVER)) {
+ repbody = req_capsule_server_get(pill, &RMF_MDT_BODY);
+ LASSERT(repbody);
+ repbody->eadatasize = 0;
+ repbody->aclsize = 0;
+ }
/*
* Check this after packing response, because after we fail here without
mcd->mcd_last_xid);
}
rc = mdt_reint_rec(info, lhc);
-
out:
mdt_exit_ucred(info);
RETURN(rc);
struct ldlm_reply *ldlm_rep;
struct ptlrpc_request *req;
struct mdt_body *reqbody;
+ struct mdt_body *repbody;
int rc;
-
ENTRY;
+ reqbody = req_capsule_client_get(&info->mti_pill, &RMF_MDT_BODY);
+ LASSERT(reqbody);
+ repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
+ LASSERT(repbody);
+ repbody->eadatasize = 0;
+ repbody->aclsize = 0;
+
switch (opcode) {
case MDT_IT_LOOKUP:
child_bits = MDS_INODELOCK_LOOKUP;
GOTO(out, rc = -EINVAL);
}
- reqbody = req_capsule_client_get(&info->mti_pill, &RMF_MDT_BODY);
- if (reqbody == NULL)
- GOTO(out, rc = err_serious(-EFAULT));
-
rc = mdt_init_ucred(info, reqbody);
if (rc)
GOTO(out, rc);
LASSERT(pill->rc_fmt == &RQF_LDLM_INTENT_OPEN);
ldlm_rep = req_capsule_server_get(&info->mti_pill, &RMF_DLM_REP);
-
repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
- repbody->eadatasize = 0;
- repbody->aclsize = 0;
ma->ma_lmm = req_capsule_server_get(&info->mti_pill, &RMF_MDT_MD);
ma->ma_lmm_size = req_capsule_get_size(&info->mti_pill, &RMF_MDT_MD,
(obd_timeout + 1) / 4);
repbody = req_capsule_server_get(&info->mti_pill, &RMF_MDT_BODY);
- repbody->eadatasize = 0;
- repbody->aclsize = 0;
ma->ma_lmm = req_capsule_server_get(&info->mti_pill, &RMF_MDT_MD);
ma->ma_lmm_size = req_capsule_get_size(&info->mti_pill, &RMF_MDT_MD,