-#ifdef CONFIG_FS_POSIX_ACL
- if (sp->sp_cr_flags & MDS_CREATE_RMT_ACL) {
- if (S_ISDIR(attr->la_mode))
- sp->u.sp_pfid = rr->rr_fid1;
- req_capsule_extend(pill, &RQF_MDS_REINT_CREATE_RMT_ACL);
- LASSERT(req_capsule_field_present(pill, &RMF_EADATA,
- RCL_CLIENT));
- rr->rr_eadata = req_capsule_client_get(pill, &RMF_EADATA);
- rr->rr_eadatalen = req_capsule_get_size(pill, &RMF_EADATA,
- RCL_CLIENT);
- sp->u.sp_ea.eadata = rr->rr_eadata;
- sp->u.sp_ea.eadatalen = rr->rr_eadatalen;
- sp->u.sp_ea.fid = rr->rr_fid1;
- RETURN(0);
- }
-#endif
- if (S_ISDIR(attr->la_mode)) {
- /* pass parent fid for cross-ref cases */
- sp->u.sp_pfid = rr->rr_fid1;
- if (sp->sp_cr_flags & MDS_CREATE_SLAVE_OBJ) {
- /* create salve object req, need
- * unpack split ea here
- */
- req_capsule_extend(pill, &RQF_MDS_REINT_CREATE_SLAVE);
- LASSERT(req_capsule_field_present(pill, &RMF_EADATA,
- RCL_CLIENT));
- rr->rr_eadata = req_capsule_client_get(pill,
- &RMF_EADATA);
- rr->rr_eadatalen = req_capsule_get_size(pill,
- &RMF_EADATA,
- RCL_CLIENT);
- sp->u.sp_ea.eadata = rr->rr_eadata;
- sp->u.sp_ea.eadatalen = rr->rr_eadatalen;
- sp->u.sp_ea.fid = rr->rr_fid1;
- RETURN(0);
- }
- req_capsule_extend(pill, &RQF_MDS_REINT_CREATE_RMT_ACL);
- } else if (S_ISLNK(attr->la_mode)) {