summaryrefslogtreecommitdiffstats
path: root/fs/9p
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-06-26 01:15:54 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2011-07-20 07:43:52 +0200
commit8a5e929dd2e05ab4d3d89f58c5e8fca596af8f3a (patch)
tree8cbed05fcd99d24e881e5ea12d8a954865e31085 /fs/9p
parentDon't pass nameidata when calling vfs_create() from mknod() (diff)
downloadlinux-8a5e929dd2e05ab4d3d89f58c5e8fca596af8f3a.tar.xz
linux-8a5e929dd2e05ab4d3d89f58c5e8fca596af8f3a.zip
don't transliterate lower bits of ->intent.open.flags to FMODE_...
->create() instances are much happier that way... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/9p')
-rw-r--r--fs/9p/vfs_inode.c2
-rw-r--r--fs/9p/vfs_inode_dotl.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index 7f6c67703195..47f71eb66b32 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -634,7 +634,7 @@ v9fs_vfs_create(struct inode *dir, struct dentry *dentry, int mode,
v9ses = v9fs_inode2v9ses(dir);
perm = unixmode2p9mode(v9ses, mode);
if (nd && nd->flags & LOOKUP_OPEN)
- flags = nd->intent.open.flags - 1;
+ flags = nd->intent.open.flags;
else
flags = O_RDWR;
diff --git a/fs/9p/vfs_inode_dotl.c b/fs/9p/vfs_inode_dotl.c
index 691c78f58bef..d148e69f21b5 100644
--- a/fs/9p/vfs_inode_dotl.c
+++ b/fs/9p/vfs_inode_dotl.c
@@ -174,7 +174,7 @@ v9fs_vfs_create_dotl(struct inode *dir, struct dentry *dentry, int omode,
v9ses = v9fs_inode2v9ses(dir);
if (nd && nd->flags & LOOKUP_OPEN)
- flags = nd->intent.open.flags - 1;
+ flags = nd->intent.open.flags;
else {
/*
* create call without LOOKUP_OPEN is due