diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-05-25 01:40:47 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-06-09 09:34:04 -0400 |
commit | 73a3d07c1082145a3b78407bb5252df290470c4c (patch) | |
tree | 58ae6256401e19750f2d5f916c1ca5636a14905b /fs | |
parent | 9d1e9232223a7f065be7f956a7b749a4cbbbe16d (diff) |
NFS: Clean up inode metadata updates
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/inode.c | 12 | ||||
-rw-r--r-- | fs/nfs/nfs4proc.c | 2 |
2 files changed, 1 insertions, 13 deletions
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c index e870e4aae714..4f12c57456f4 100644 --- a/fs/nfs/inode.c +++ b/fs/nfs/inode.c | |||
@@ -1360,12 +1360,6 @@ static void nfs_wcc_update_inode(struct inode *inode, struct nfs_fattr *fattr) | |||
1360 | { | 1360 | { |
1361 | struct nfs_inode *nfsi = NFS_I(inode); | 1361 | struct nfs_inode *nfsi = NFS_I(inode); |
1362 | 1362 | ||
1363 | if ((fattr->valid & NFS_ATTR_PRE_CHANGE) != 0 | ||
1364 | && nfsi->change_attr == fattr->pre_change_attr) { | ||
1365 | nfsi->change_attr = fattr->change_attr; | ||
1366 | nfsi->cache_change_attribute = jiffies; | ||
1367 | } | ||
1368 | |||
1369 | /* If we have atomic WCC data, we may update some attributes */ | 1363 | /* If we have atomic WCC data, we may update some attributes */ |
1370 | if ((fattr->valid & NFS_ATTR_WCC) != 0) { | 1364 | if ((fattr->valid & NFS_ATTR_WCC) != 0) { |
1371 | if (timespec_equal(&inode->i_ctime, &fattr->pre_ctime)) { | 1365 | if (timespec_equal(&inode->i_ctime, &fattr->pre_ctime)) { |
@@ -1399,9 +1393,6 @@ static int nfs_check_inode_attributes(struct inode *inode, struct nfs_fattr *fat | |||
1399 | int data_unstable; | 1393 | int data_unstable; |
1400 | 1394 | ||
1401 | 1395 | ||
1402 | if ((fattr->valid & NFS_ATTR_FATTR) == 0) | ||
1403 | return 0; | ||
1404 | |||
1405 | /* Has the inode gone and changed behind our back? */ | 1396 | /* Has the inode gone and changed behind our back? */ |
1406 | if (nfsi->fileid != fattr->fileid | 1397 | if (nfsi->fileid != fattr->fileid |
1407 | || (inode->i_mode & S_IFMT) != (fattr->mode & S_IFMT)) { | 1398 | || (inode->i_mode & S_IFMT) != (fattr->mode & S_IFMT)) { |
@@ -1525,9 +1516,6 @@ static int nfs_update_inode(struct inode *inode, struct nfs_fattr *fattr) | |||
1525 | __FUNCTION__, inode->i_sb->s_id, inode->i_ino, | 1516 | __FUNCTION__, inode->i_sb->s_id, inode->i_ino, |
1526 | atomic_read(&inode->i_count), fattr->valid); | 1517 | atomic_read(&inode->i_count), fattr->valid); |
1527 | 1518 | ||
1528 | if ((fattr->valid & NFS_ATTR_FATTR) == 0) | ||
1529 | return 0; | ||
1530 | |||
1531 | if (nfsi->fileid != fattr->fileid) | 1519 | if (nfsi->fileid != fattr->fileid) |
1532 | goto out_fileid; | 1520 | goto out_fileid; |
1533 | 1521 | ||
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index d86c0db7b1e8..e38a84874492 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -2008,7 +2008,7 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, struct qstr * | |||
2008 | if (!status) { | 2008 | if (!status) { |
2009 | update_changeattr(dir, &res.cinfo); | 2009 | update_changeattr(dir, &res.cinfo); |
2010 | nfs_post_op_update_inode(dir, res.dir_attr); | 2010 | nfs_post_op_update_inode(dir, res.dir_attr); |
2011 | nfs_refresh_inode(inode, res.fattr); | 2011 | nfs_post_op_update_inode(inode, res.fattr); |
2012 | } | 2012 | } |
2013 | 2013 | ||
2014 | return status; | 2014 | return status; |