Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

9p: v9fs_fid_add() can't fail now

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Al Viro 2ea03e1d aaeb7ecf

+11 -22
+1 -2
fs/9p/fid.c
··· 41 41 * 42 42 */ 43 43 44 - int v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid) 44 + void v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid) 45 45 { 46 46 spin_lock(&dentry->d_lock); 47 47 hlist_add_head(&fid->dlist, (struct hlist_head *)&dentry->d_fsdata); 48 48 spin_unlock(&dentry->d_lock); 49 - return 0; 50 49 } 51 50 52 51 /**
+1 -1
fs/9p/fid.h
··· 25 25 26 26 struct p9_fid *v9fs_fid_lookup(struct dentry *dentry); 27 27 struct p9_fid *v9fs_fid_clone(struct dentry *dentry); 28 - int v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid); 28 + void v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid); 29 29 struct p9_fid *v9fs_writeback_fid(struct dentry *dentry); 30 30 #endif
+2 -7
fs/9p/vfs_inode.c
··· 692 692 "inode creation failed %d\n", err); 693 693 goto error; 694 694 } 695 - err = v9fs_fid_add(dentry, fid); 696 - if (err < 0) 697 - goto error; 695 + v9fs_fid_add(dentry, fid); 698 696 d_instantiate(dentry, inode); 699 697 } 700 698 return ofid; ··· 828 830 inode = NULL; 829 831 goto error; 830 832 } 831 - result = v9fs_fid_add(dentry, fid); 832 - if (result < 0) 833 - goto error_iput; 833 + v9fs_fid_add(dentry, fid); 834 834 inst_out: 835 835 /* 836 836 * If we had a rename on the server and a parallel lookup ··· 841 845 if (!IS_ERR(res)) 842 846 return res; 843 847 result = PTR_ERR(res); 844 - error_iput: 845 848 iput(inode); 846 849 error: 847 850 p9_client_clunk(fid);
+7 -12
fs/9p/vfs_inode_dotl.c
··· 333 333 /* Now set the ACL based on the default value */ 334 334 v9fs_set_create_acl(inode, fid, dacl, pacl); 335 335 336 - err = v9fs_fid_add(dentry, fid); 337 - if (err < 0) 338 - goto error; 336 + v9fs_fid_add(dentry, fid); 339 337 d_instantiate(dentry, inode); 340 338 341 339 v9inode = V9FS_I(inode); ··· 451 453 err); 452 454 goto error; 453 455 } 454 - err = v9fs_fid_add(dentry, fid); 455 - if (err < 0) 456 - goto error; 456 + v9fs_fid_add(dentry, fid); 457 457 v9fs_set_create_acl(inode, fid, dacl, pacl); 458 458 d_instantiate(dentry, inode); 459 459 fid = NULL; 460 + err = 0; 460 461 } else { 461 462 /* 462 463 * Not in cached mode. No need to populate ··· 744 747 err); 745 748 goto error; 746 749 } 747 - err = v9fs_fid_add(dentry, fid); 748 - if (err < 0) 749 - goto error; 750 + v9fs_fid_add(dentry, fid); 750 751 d_instantiate(dentry, inode); 751 752 fid = NULL; 753 + err = 0; 752 754 } else { 753 755 /* Not in cached mode. No need to populate inode with stat */ 754 756 inode = v9fs_get_inode(dir->i_sb, S_IFLNK, 0); ··· 896 900 goto error; 897 901 } 898 902 v9fs_set_create_acl(inode, fid, dacl, pacl); 899 - err = v9fs_fid_add(dentry, fid); 900 - if (err < 0) 901 - goto error; 903 + v9fs_fid_add(dentry, fid); 902 904 d_instantiate(dentry, inode); 903 905 fid = NULL; 906 + err = 0; 904 907 } else { 905 908 /* 906 909 * Not in cached mode. No need to populate inode with stat.