cifs_lookup(): LOOKUP_OPEN is set only on the last component
Al Viro [Sun, 26 Jun 2011 01:45:21 +0000 (21:45 -0400)]
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

fs/cifs/dir.c

index 251c2ca..14d602f 100644 (file)
@@ -568,7 +568,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry,
         * reduction in network traffic in the other paths.
         */
        if (pTcon->unix_ext) {
-               if (nd && !(nd->flags & (LOOKUP_PARENT | LOOKUP_DIRECTORY)) &&
+               if (nd && !(nd->flags & LOOKUP_DIRECTORY) &&
                     (nd->flags & LOOKUP_OPEN) && !pTcon->broken_posix_open &&
                     (nd->intent.open.file->f_flags & O_CREAT)) {
                        rc = cifs_posix_open(full_path, &newInode,