Re: [PATCH 4.19 082/114] fuse: Add FOPEN_STREAM to use stream_open()

From: Kirill Smelkov
Date: Tue May 28 2019 - 15:05:47 EST


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