no need to check for LOOKUP_OPEN in ->create() instances
authorAl Viro <viro@zeniv.linux.org.uk>
Sun, 26 Jun 2011 01:17:17 +0000 (21:17 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 20 Jul 2011 05:43:56 +0000 (01:43 -0400)
... it will be set in nd->flag for all cases with non-NULL nd
(i.e. when called from do_last()).

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/9p/vfs_inode.c
fs/9p/vfs_inode_dotl.c
fs/cifs/dir.c
fs/fuse/dir.c
fs/nfs/dir.c

index 47f71eb66b32e0c82be58d8ce87af1371392c30b..7f9976a866e9404f891c8af67d344447177c5309 100644 (file)
@@ -633,7 +633,7 @@ v9fs_vfs_create(struct inode *dir, struct dentry *dentry, int mode,
        fid = NULL;
        v9ses = v9fs_inode2v9ses(dir);
        perm = unixmode2p9mode(v9ses, mode);
-       if (nd && nd->flags & LOOKUP_OPEN)
+       if (nd)
                flags = nd->intent.open.flags;
        else
                flags = O_RDWR;
@@ -649,7 +649,7 @@ v9fs_vfs_create(struct inode *dir, struct dentry *dentry, int mode,
 
        v9fs_invalidate_inode_attr(dir);
        /* if we are opening a file, assign the open fid to the file */
-       if (nd && nd->flags & LOOKUP_OPEN) {
+       if (nd) {
                v9inode = V9FS_I(dentry->d_inode);
                mutex_lock(&v9inode->v_mutex);
                if (v9ses->cache && !v9inode->writeback_fid &&
index d148e69f21b55163e454e8caf40e34a49a44aa55..32bbbe5aa689486df75a2eed721aaf12b656138c 100644 (file)
@@ -173,7 +173,7 @@ v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
        struct posix_acl *pacl = NULL, *dacl = NULL;
 
        v9ses = v9fs_inode2v9ses(dir);
-       if (nd && nd->flags & LOOKUP_OPEN)
+       if (nd)
                flags = nd->intent.open.flags;
        else {
                /*
index fa8c21d913bc5b212191d2c444cb5ce74e1d4058..8766149f63008ea040a841363a29419f56c14809 100644 (file)
@@ -179,7 +179,7 @@ cifs_create(struct inode *inode, struct dentry *direntry, int mode,
        if (oplockEnabled)
                oplock = REQ_OPLOCK;
 
-       if (nd && (nd->flags & LOOKUP_OPEN))
+       if (nd)
                oflags = nd->intent.open.file->f_flags;
        else
                oflags = O_RDONLY | O_CREAT;
@@ -214,7 +214,7 @@ cifs_create(struct inode *inode, struct dentry *direntry, int mode,
                   which should be rare for path not covered on files) */
        }
 
-       if (nd && (nd->flags & LOOKUP_OPEN)) {
+       if (nd) {
                /* if the file is going to stay open, then we
                   need to set the desired access properly */
                desiredAccess = 0;
@@ -328,7 +328,7 @@ cifs_create_set_dentry:
        else
                cFYI(1, "Create worked, get_inode_info failed rc = %d", rc);
 
-       if (newinode && nd && (nd->flags & LOOKUP_OPEN)) {
+       if (newinode && nd) {
                struct cifsFileInfo *pfile_info;
                struct file *filp;
 
index 47559dd331935e73c2de41836091828b47074983..02063dde2728cafdc3cf549d35fb81ab3a7e00c2 100644 (file)
@@ -576,7 +576,7 @@ static int fuse_mknod(struct inode *dir, struct dentry *entry, int mode,
 static int fuse_create(struct inode *dir, struct dentry *entry, int mode,
                       struct nameidata *nd)
 {
-       if (nd && (nd->flags & LOOKUP_OPEN)) {
+       if (nd) {
                int err = fuse_create_open(dir, entry, mode, nd);
                if (err != -ENOSYS)
                        return err;
index b5f63a50fa7f9e10398830d5d85edcbc67176fe3..77ae95f1549760531542add9a3e7259dbb5134a3 100644 (file)
@@ -1585,7 +1585,7 @@ static int nfs_open_create(struct inode *dir, struct dentry *dentry, int mode,
        attr.ia_mode = mode;
        attr.ia_valid = ATTR_MODE;
 
-       if (nd && (nd->flags & LOOKUP_OPEN) != 0)
+       if (nd)
                open_flags = nd->intent.open.flags;
 
        ctx = create_nfs_open_context(dentry, open_flags);
@@ -1596,7 +1596,7 @@ static int nfs_open_create(struct inode *dir, struct dentry *dentry, int mode,
        error = NFS_PROTO(dir)->create(dir, dentry, &attr, open_flags, ctx);
        if (error != 0)
                goto out_put_ctx;
-       if (nd && (nd->flags & LOOKUP_OPEN) != 0) {
+       if (nd) {
                error = nfs_intent_set_file(nd, ctx);
                if (error < 0)
                        goto out_err;
@@ -1675,7 +1675,7 @@ static int nfs_create(struct inode *dir, struct dentry *dentry, int mode,
        attr.ia_mode = mode;
        attr.ia_valid = ATTR_MODE;
 
-       if (nd && (nd->flags & LOOKUP_OPEN) != 0)
+       if (nd)
                open_flags = nd->intent.open.flags;
 
        error = NFS_PROTO(dir)->create(dir, dentry, &attr, open_flags, NULL);