summaryrefslogtreecommitdiffstats
path: root/fs/nfs
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@fys.uio.no>2005-10-17 12:03:23 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2005-10-17 23:47:16 +0200
commit6ce969171d5187f7621be68c0ebbc7fb02ec53f1 (patch)
tree9784933075d154085fec4fe96be7dc8006202fbb /fs/nfs
parent[PATCH] NFS: Fix cache consistency races (diff)
downloadlinux-6ce969171d5187f7621be68c0ebbc7fb02ec53f1.tar.xz
linux-6ce969171d5187f7621be68c0ebbc7fb02ec53f1.zip
[PATCH] NFS: Fix Oopsable/unnecessary i_count manipulations in nfs_wait_on_inode()
Oopsable since nfs_wait_on_inode() can get called as part of iput_final(). Unnecessary since the caller had better be damned sure that the inode won't disappear from underneath it anyway. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/inode.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
index 6be46d21c01e..d4eadeea128e 100644
--- a/fs/nfs/inode.c
+++ b/fs/nfs/inode.c
@@ -877,12 +877,10 @@ static int nfs_wait_on_inode(struct inode *inode)
sigset_t oldmask;
int error;
- atomic_inc(&inode->i_count);
rpc_clnt_sigmask(clnt, &oldmask);
error = wait_on_bit_lock(&nfsi->flags, NFS_INO_REVALIDATING,
nfs_wait_schedule, TASK_INTERRUPTIBLE);
rpc_clnt_sigunmask(clnt, &oldmask);
- iput(inode);
return error;
}