- nfid = body->fid1;
- it->d.lustre.it_disposition &= ~DISP_ENQ_COMPLETE;
- rc = md_intent_lock(lmv->tgts[nfid.mds].ltd_exp, &nfid,
- NULL, 0, lmm, lmmsize, NULL, it, flags,
- &req, cb_blocking);
-
- /* llite needs LOOKUP lock to track dentry revocation in
- * order to maintain dcache consistency. thus drop UPDATE
- * lock here and put LOOKUP in request */
+ LASSERT((body->valid & OBD_MD_FID) != 0);
+
+ nid = body->id1;
+ LUSTRE_IT(it)->it_disposition &= ~DISP_ENQ_COMPLETE;
+ rc = md_intent_lock(lmv->tgts[id_group(&nid)].ltd_exp, &nid, NULL,
+ 0, lmm, lmmsize, NULL, it, flags, &req, cb_blocking);
+
+ /*
+ * llite needs LOOKUP lock to track dentry revocation in order
+ * to maintain dcache consistency. Thus drop UPDATE lock here
+ * and put LOOKUP in request.
+ */