diff options
author | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-08-27 14:30:07 +0200 |
---|---|---|
committer | David Woodhouse <dwmw2@shinybook.infradead.org> | 2005-08-27 14:30:07 +0200 |
commit | efda9452046bdd707b23a85b7846ec33548f84f1 (patch) | |
tree | f08c915049ea1829ba115cd41a0ba28ddf184e07 /fs/nfs/read.c | |
parent | b01f2cc1c37ac3d5ca313c90370a586dffe5aca9 (diff) | |
parent | 36676bcbf9f6bcbea9d06e67ee8d04eacde54952 (diff) | |
download | op-kernel-dev-efda9452046bdd707b23a85b7846ec33548f84f1.zip op-kernel-dev-efda9452046bdd707b23a85b7846ec33548f84f1.tar.gz |
Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'fs/nfs/read.c')
-rw-r--r-- | fs/nfs/read.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/nfs/read.c b/fs/nfs/read.c index 6f866b8aa..6ceb1d4 100644 --- a/fs/nfs/read.c +++ b/fs/nfs/read.c @@ -140,7 +140,9 @@ static int nfs_readpage_sync(struct nfs_open_context *ctx, struct inode *inode, if (rdata->res.eof != 0 || result == 0) break; } while (count); - NFS_FLAGS(inode) |= NFS_INO_INVALID_ATIME; + spin_lock(&inode->i_lock); + NFS_I(inode)->cache_validity |= NFS_INO_INVALID_ATIME; + spin_unlock(&inode->i_lock); if (count) memclear_highpage_flush(page, rdata->args.pgbase, count); @@ -473,7 +475,9 @@ void nfs_readpage_result(struct rpc_task *task) } task->tk_status = -EIO; } - NFS_FLAGS(data->inode) |= NFS_INO_INVALID_ATIME; + spin_lock(&data->inode->i_lock); + NFS_I(data->inode)->cache_validity |= NFS_INO_INVALID_ATIME; + spin_unlock(&data->inode->i_lock); data->complete(data, status); } |