diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-13 20:14:13 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-01-13 20:14:13 -0800 |
commit | db9effe99adc67c53e6aedadadd2aa9a02342e48 (patch) | |
tree | efe7ebfe951972568189ef2548130f0abd515210 /fs/nfs | |
parent | 9c4bc1c2befbbdce4b9fd526e67a7a2ea143ffa2 (diff) | |
parent | f20877d94a74557b7c28b4ed8920d834c31e0ea5 (diff) |
Merge branch 'vfs-scale-working' of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin
* 'vfs-scale-working' of git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin:
fs: fix do_last error case when need_reval_dot
nfs: add missing rcu-walk check
fs: hlist UP debug fixup
fs: fix dropping of rcu-walk from force_reval_path
fs: force_reval_path drop rcu-walk before d_invalidate
fs: small rcu-walk documentation fixes
Fixed up trivial conflicts in Documentation/filesystems/porting
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/dir.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 64ee240f3c80..df8c03a02161 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c @@ -1406,11 +1406,15 @@ no_open: static int nfs_open_revalidate(struct dentry *dentry, struct nameidata *nd) { struct dentry *parent = NULL; - struct inode *inode = dentry->d_inode; + struct inode *inode; struct inode *dir; struct nfs_open_context *ctx; int openflags, ret = 0; + if (nd->flags & LOOKUP_RCU) + return -ECHILD; + + inode = dentry->d_inode; if (!is_atomic_open(nd) || d_mountpoint(dentry)) goto no_open; |