Unverified Commit 44c53ac0 authored by Eric Van Hensbergen's avatar Eric Van Hensbergen
Browse files

fs/9p: convert mkdir to use get_new_inode



mkdir had different code paths for inode creation, cache used
the get_new_inode_from_fid helper, but non-cached used
v9fs_get_inode.  Collapsed into a single implementation across
both as there should be no difference.

Signed-off-by: default avatarEric Van Hensbergen <ericvh@kernel.org>
parent fe1371d0
Loading
Loading
Loading
Loading
+10 −25
Original line number Diff line number Diff line
@@ -402,7 +402,6 @@ static int v9fs_vfs_mkdir_dotl(struct mnt_idmap *idmap,
	}

	/* instantiate inode and assign the unopened fid to the dentry */
	if (v9ses->cache & (CACHE_META|CACHE_LOOSE)) {
	inode = v9fs_get_new_inode_from_fid(v9ses, fid, dir->i_sb);
	if (IS_ERR(inode)) {
		err = PTR_ERR(inode);
@@ -414,20 +413,6 @@ static int v9fs_vfs_mkdir_dotl(struct mnt_idmap *idmap,
	v9fs_set_create_acl(inode, fid, dacl, pacl);
	d_instantiate(dentry, inode);
	err = 0;
	} else {
		/*
		 * Not in cached mode. No need to populate
		 * inode with stat. We need to get an inode
		 * so that we can set the acl with dentry
		 */
		inode = v9fs_get_inode(dir->i_sb, mode, 0);
		if (IS_ERR(inode)) {
			err = PTR_ERR(inode);
			goto error;
		}
		v9fs_set_create_acl(inode, fid, dacl, pacl);
		d_instantiate(dentry, inode);
	}
	inc_nlink(dir);
	v9fs_invalidate_inode_attr(dir);
error: