memcpy(&lli->lli_intent_lock_handle, &lockh, sizeof(lockh));
ino = ll_inode_by_name(dir, dentry, &type);
+#warning FIXME: handle negative inode case (see old ll_lookup)
err = mdc_getattr(&sbi->ll_mdc_conn, ino, type,
OBD_MD_FLNOTOBD|OBD_MD_FLBLOCKS, 0, &request);
static struct inode *ll_create_node(struct inode *dir, const char *name,
int namelen, const char *tgt, int tgtlen,
int mode, __u64 extra,
- struct lookup_intent *it,
+ struct lookup_intent *it,
struct lov_stripe_md *smd)
{
struct inode *inode;
RETURN(rc);
}
- mode = mode | S_IFREG;
CDEBUG(D_DENTRY, "name %s mode %o o_id %lld\n",
dentry->d_name.name, mode, (unsigned long long)oa.o_id);
inode = ll_create_node(dir, dentry->d_name.name, dentry->d_name.len,
{
struct inode * inode = ll_create_node(dir, dentry->d_name.name,
dentry->d_name.len, NULL, 0,
- mode, rdev, NULL, NULL);
+ mode, rdev, dentry->d_it, NULL);
int err = PTR_ERR(inode);
if (!IS_ERR(inode))
err = ext2_add_nondir(dentry, inode);