aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/dir.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-01 21:51:38 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-10-09 17:19:25 -0400
commit5724ab37872042176916441930e78fd353be1e5e (patch)
tree255ba54f98f20ef22584bfb7308bf80f0c4fa2ad /fs/nfs/dir.c
parentfab728e156b3cbfe31f05d6e7cdebe3d5eaff878 (diff)
NFS: nfs_instantiate() should set the dentry verifier
That will also allow us to remove the calls in mknod and mkdir. In addition it will ensure that symlinks set it correctly. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-rw-r--r--fs/nfs/dir.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index 82395c511710..3f0def65b8ab 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -1189,6 +1189,7 @@ int nfs_instantiate(struct dentry *dentry, struct nfs_fh *fhandle,
1189 if (error) 1189 if (error)
1190 goto out_error; 1190 goto out_error;
1191 } 1191 }
1192 nfs_set_verifier(dentry, nfs_save_change_attribute(dir));
1192 if (!(fattr->valid & NFS_ATTR_FATTR)) { 1193 if (!(fattr->valid & NFS_ATTR_FATTR)) {
1193 struct nfs_server *server = NFS_SB(dentry->d_sb); 1194 struct nfs_server *server = NFS_SB(dentry->d_sb);
1194 error = server->nfs_client->rpc_ops->getattr(server, fhandle, fattr); 1195 error = server->nfs_client->rpc_ops->getattr(server, fhandle, fattr);
@@ -1237,7 +1238,6 @@ static int nfs_create(struct inode *dir, struct dentry *dentry, int mode,
1237 nfs_end_data_update(dir); 1238 nfs_end_data_update(dir);
1238 if (error != 0) 1239 if (error != 0)
1239 goto out_err; 1240 goto out_err;
1240 nfs_set_verifier(dentry, nfs_save_change_attribute(dir));
1241 unlock_kernel(); 1241 unlock_kernel();
1242 return 0; 1242 return 0;
1243out_err: 1243out_err:
@@ -1270,7 +1270,6 @@ nfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t rdev)
1270 nfs_end_data_update(dir); 1270 nfs_end_data_update(dir);
1271 if (status != 0) 1271 if (status != 0)
1272 goto out_err; 1272 goto out_err;
1273 nfs_set_verifier(dentry, nfs_save_change_attribute(dir));
1274 unlock_kernel(); 1273 unlock_kernel();
1275 return 0; 1274 return 0;
1276out_err: 1275out_err:
@@ -1299,7 +1298,6 @@ static int nfs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
1299 nfs_end_data_update(dir); 1298 nfs_end_data_update(dir);
1300 if (error != 0) 1299 if (error != 0)
1301 goto out_err; 1300 goto out_err;
1302 nfs_set_verifier(dentry, nfs_save_change_attribute(dir));
1303 unlock_kernel(); 1301 unlock_kernel();
1304 return 0; 1302 return 0;
1305out_err: 1303out_err: