On Tue, May 28, 2019 at 01:16:58PM +0200, Pavel Machek wrote: > Hi! > > > +++ b/include/uapi/linux/fuse.h > > @@ -219,10 +219,12 @@ struct fuse_file_lock { > > * FOPEN_DIRECT_IO: bypass page cache for this open file > > * FOPEN_KEEP_CACHE: don't invalidate the data cache on open > > * FOPEN_NONSEEKABLE: the file is not seekable > > + * FOPEN_STREAM: the file is stream-like (no file position at all) > > */ > > #define FOPEN_DIRECT_IO (1 << 0) > > #define FOPEN_KEEP_CACHE (1 << 1) > > #define FOPEN_NONSEEKABLE (1 << 2) > > +#define FOPEN_STREAM (1 << 4) > > Interesting choice of constants. It is too late to change it now, but > was (1 << 3) meant here?
It is just because this is 4.19 backport of original patch. There (on 5.2) it was like this: --- a/include/uapi/linux/fuse.h +++ b/include/uapi/linux/fuse.h @@ -232,11 +232,13 @@ struct fuse_file_lock { * FOPEN_KEEP_CACHE: don't invalidate the data cache on open * FOPEN_NONSEEKABLE: the file is not seekable * FOPEN_CACHE_DIR: allow caching this directory + * FOPEN_STREAM: the file is stream-like (no file position at all) */ #define FOPEN_DIRECT_IO (1 << 0) #define FOPEN_KEEP_CACHE (1 << 1) #define FOPEN_NONSEEKABLE (1 << 2) #define FOPEN_CACHE_DIR (1 << 3) +#define FOPEN_STREAM (1 << 4) i.e. (1 << 3) was already occupied by FOPEN_CACHE_DIR which was added by commit 6433b8998a21 (fuse: add FOPEN_CACHE_DIR) Kirill