fs/9p: Don't set dentry->d_op in create routines
We do set dentry->d_op in lookup even in case of EOENT entries. That implies we should have dentry->d_op already set when create/mkdir/mknod/link/symlink routines are called Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
This commit is contained in:
parent
c25a61f542
commit
b8b80cf37c
@ -537,12 +537,6 @@ v9fs_create(struct v9fs_session_info *v9ses, struct inode *dir,
|
||||
P9_DPRINTK(P9_DEBUG_VFS, "inode creation failed %d\n", err);
|
||||
goto error;
|
||||
}
|
||||
|
||||
if (v9ses->cache)
|
||||
d_set_d_op(dentry, &v9fs_cached_dentry_operations);
|
||||
else
|
||||
d_set_d_op(dentry, &v9fs_dentry_operations);
|
||||
|
||||
d_instantiate(dentry, inode);
|
||||
err = v9fs_fid_add(dentry, fid);
|
||||
if (err < 0)
|
||||
|
@ -211,11 +211,6 @@ v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
|
||||
P9_DPRINTK(P9_DEBUG_VFS, "inode creation failed %d\n", err);
|
||||
goto error;
|
||||
}
|
||||
if (v9ses->cache)
|
||||
dentry->d_op = &v9fs_cached_dentry_operations;
|
||||
else
|
||||
dentry->d_op = &v9fs_dentry_operations;
|
||||
|
||||
d_instantiate(dentry, inode);
|
||||
err = v9fs_fid_add(dentry, fid);
|
||||
if (err < 0)
|
||||
@ -312,7 +307,6 @@ static int v9fs_vfs_mkdir_dotl(struct inode *dir,
|
||||
err);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_cached_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
err = v9fs_fid_add(dentry, fid);
|
||||
if (err < 0)
|
||||
@ -329,7 +323,6 @@ static int v9fs_vfs_mkdir_dotl(struct inode *dir,
|
||||
err = PTR_ERR(inode);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
}
|
||||
/* Now set the ACL based on the default value */
|
||||
@ -560,7 +553,6 @@ v9fs_vfs_symlink_dotl(struct inode *dir, struct dentry *dentry,
|
||||
err);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_cached_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
err = v9fs_fid_add(dentry, fid);
|
||||
if (err < 0)
|
||||
@ -573,7 +565,6 @@ v9fs_vfs_symlink_dotl(struct inode *dir, struct dentry *dentry,
|
||||
err = PTR_ERR(inode);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
}
|
||||
|
||||
@ -648,8 +639,6 @@ v9fs_vfs_link_dotl(struct dentry *old_dentry, struct inode *dir,
|
||||
*/
|
||||
ihold(old_dentry->d_inode);
|
||||
}
|
||||
|
||||
d_set_d_op(dentry, old_dentry->d_op);
|
||||
d_instantiate(dentry, old_dentry->d_inode);
|
||||
|
||||
return err;
|
||||
@ -728,7 +717,6 @@ v9fs_vfs_mknod_dotl(struct inode *dir, struct dentry *dentry, int omode,
|
||||
err);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_cached_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
err = v9fs_fid_add(dentry, fid);
|
||||
if (err < 0)
|
||||
@ -744,7 +732,6 @@ v9fs_vfs_mknod_dotl(struct inode *dir, struct dentry *dentry, int omode,
|
||||
err = PTR_ERR(inode);
|
||||
goto error;
|
||||
}
|
||||
d_set_d_op(dentry, &v9fs_dentry_operations);
|
||||
d_instantiate(dentry, inode);
|
||||
}
|
||||
/* Now set the ACL based on the default value */
|
||||
|
Loading…
Reference in New Issue
Block a user