ceph: LOOKUP_OPEN is set only when it's the last component
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 26 Jun 2011 01:43:56 +0000 (21:43 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 20 Jul 2011 05:43:59 +0000 (01:43 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/ceph/dir.c

index ef8f08c343e8936df6f6fd2cde5eb895f93d8f83..b6d436f3c1ae01e1cd457cab14131b2d50e1922e 100644 (file)
@@ -566,7 +566,6 @@ static struct dentry *ceph_lookup(struct inode *dir, struct dentry *dentry,
        /* open (but not create!) intent? */
        if (nd &&
            (nd->flags & LOOKUP_OPEN) &&
-           (nd->flags & LOOKUP_CONTINUE) == 0 && /* only open last component */
            !(nd->intent.open.flags & O_CREAT)) {
                int mode = nd->intent.open.create_mode & ~current->fs->umask;
                return ceph_lookup_open(dir, dentry, nd, mode, 1);