- rec = lustre_msg_buf(req->rq_reqmsg, 0);
- mds_setattr_pack(rec, inode, iattr);
+ mdc_pack_secdesc(req, size[0]);
+
+ if (iattr->ia_valid & ATTR_FROM_OPEN) {
+ req->rq_request_portal = MDS_SETATTR_PORTAL; //XXX FIXME bug 249
+ rpc_lock = obd->u.cli.cl_setattr_lock;
+ } else {
+ rpc_lock = obd->u.cli.cl_rpc_lock;
+ }
+
+ if (iattr->ia_valid & (ATTR_MTIME | ATTR_CTIME))
+ CDEBUG(D_INODE, "setting mtime %lu, ctime %lu\n",
+ LTIME_S(iattr->ia_mtime), LTIME_S(iattr->ia_ctime));
+ mdc_setattr_pack(req->rq_reqmsg, 1, data, iattr, ea, ealen,
+ ea2, ea2len);