+ exp = ll_i2mdcexp(de->d_inode);
+ ll_inode2fid(&pfid, de->d_parent->d_inode);
+ ll_inode2fid(&cfid, de->d_inode);
+ icbd.icbd_parent = de->d_parent->d_inode;
+ icbd.icbd_childp = &de;
+
+ /*
+ * never execute intents for mount points
+ * - attrs will be fixed up in ll_revalidate_inode
+ */
+ if (d_mountpoint(de))
+ RETURN(1);
+
+ ll_frob_intent(&it, &lookup_it);
+ LASSERT(it);
+
+ ll_i2uctxt(&ctxt, de->d_parent->d_inode, de->d_inode);
+
+ rc = mdc_intent_lock(exp, &ctxt, &pfid, de->d_name.name, de->d_name.len,
+ NULL, 0,
+ &cfid, it, flags, &req, ll_mdc_blocking_ast);
+ /* If req is NULL, then mdc_intent_lock only tried to do a lock match;
+ * if all was well, it will return 1 if it found locks, 0 otherwise. */
+ if (req == NULL && rc >= 0)
+ GOTO(out, rc);