Unverified Commit 2dc92e59 authored by Eric Van Hensbergen's avatar Eric Van Hensbergen
Browse files

fs/9p: Eliminate redundant non-cache path in mknod



Like symlink, mknod had a seperate path with different inode
allocation -- but this seems unnecessary, so eliminating this path.

Signed-off-by: default avatarEric Van Hensbergen <ericvh@kernel.org>
parent 6bb29327
Loading
Loading
Loading
Loading
+10 −26
Original line number Diff line number Diff line
@@ -840,9 +840,6 @@ v9fs_vfs_mknod_dotl(struct mnt_idmap *idmap, struct inode *dir,
			 err);
		goto error;
	}

	/* 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);
@@ -854,19 +851,6 @@ v9fs_vfs_mknod_dotl(struct mnt_idmap *idmap, struct inode *dir,
	v9fs_fid_add(dentry, &fid);
	d_instantiate(dentry, inode);
	err = 0;
	} else {
		/*
		 * Not in cached mode. No need to populate inode with stat.
		 * socket syscall returns a fd, so we need instantiate
		 */
		inode = v9fs_get_inode(dir->i_sb, mode, rdev);
		if (IS_ERR(inode)) {
			err = PTR_ERR(inode);
			goto error;
		}
		v9fs_set_create_acl(inode, fid, dacl, pacl);
		d_instantiate(dentry, inode);
	}
error:
	p9_fid_put(fid);
	v9fs_put_acl(dacl, pacl);