diff options
Diffstat (limited to 'fs/fuse/file.c')
-rw-r--r-- | fs/fuse/file.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index 4a28c3d37732..6726378661da 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
@@ -28,7 +28,9 @@ static int fuse_send_open(struct inode *inode, struct file *file, int isdir, | |||
28 | return PTR_ERR(req); | 28 | return PTR_ERR(req); |
29 | 29 | ||
30 | memset(&inarg, 0, sizeof(inarg)); | 30 | memset(&inarg, 0, sizeof(inarg)); |
31 | inarg.flags = file->f_flags & ~(O_CREAT | O_EXCL | O_NOCTTY | O_TRUNC); | 31 | inarg.flags = file->f_flags & ~(O_CREAT | O_EXCL | O_NOCTTY); |
32 | if (!fc->atomic_o_trunc) | ||
33 | inarg.flags &= ~O_TRUNC; | ||
32 | req->in.h.opcode = isdir ? FUSE_OPENDIR : FUSE_OPEN; | 34 | req->in.h.opcode = isdir ? FUSE_OPENDIR : FUSE_OPEN; |
33 | req->in.h.nodeid = get_node_id(inode); | 35 | req->in.h.nodeid = get_node_id(inode); |
34 | req->in.numargs = 1; | 36 | req->in.numargs = 1; |