summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/fuse/file.c4
-rw-r--r--include/uapi/linux/fuse.h2
2 files changed, 5 insertions, 1 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c
index f811af4f6507..92ee15dda4c7 100644
--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -178,7 +178,9 @@ void fuse_finish_open(struct inode *inode, struct file *file)
178 178
179 if (!(ff->open_flags & FOPEN_KEEP_CACHE)) 179 if (!(ff->open_flags & FOPEN_KEEP_CACHE))
180 invalidate_inode_pages2(inode->i_mapping); 180 invalidate_inode_pages2(inode->i_mapping);
181 if (ff->open_flags & FOPEN_NONSEEKABLE) 181 if (ff->open_flags & FOPEN_STREAM)
182 stream_open(inode, file);
183 else if (ff->open_flags & FOPEN_NONSEEKABLE)
182 nonseekable_open(inode, file); 184 nonseekable_open(inode, file);
183 if (fc->atomic_o_trunc && (file->f_flags & O_TRUNC)) { 185 if (fc->atomic_o_trunc && (file->f_flags & O_TRUNC)) {
184 struct fuse_inode *fi = get_fuse_inode(inode); 186 struct fuse_inode *fi = get_fuse_inode(inode);
diff --git a/include/uapi/linux/fuse.h b/include/uapi/linux/fuse.h
index 36899cfcb654..17afe2dd8d1c 100644
--- a/include/uapi/linux/fuse.h
+++ b/include/uapi/linux/fuse.h
@@ -232,11 +232,13 @@ struct fuse_file_lock {
232 * FOPEN_KEEP_CACHE: don't invalidate the data cache on open 232 * FOPEN_KEEP_CACHE: don't invalidate the data cache on open
233 * FOPEN_NONSEEKABLE: the file is not seekable 233 * FOPEN_NONSEEKABLE: the file is not seekable
234 * FOPEN_CACHE_DIR: allow caching this directory 234 * FOPEN_CACHE_DIR: allow caching this directory
235 * FOPEN_STREAM: the file is stream-like (no file position at all)
235 */ 236 */
236#define FOPEN_DIRECT_IO (1 << 0) 237#define FOPEN_DIRECT_IO (1 << 0)
237#define FOPEN_KEEP_CACHE (1 << 1) 238#define FOPEN_KEEP_CACHE (1 << 1)
238#define FOPEN_NONSEEKABLE (1 << 2) 239#define FOPEN_NONSEEKABLE (1 << 2)
239#define FOPEN_CACHE_DIR (1 << 3) 240#define FOPEN_CACHE_DIR (1 << 3)
241#define FOPEN_STREAM (1 << 4)
240 242
241/** 243/**
242 * INIT request/reply flags 244 * INIT request/reply flags