History

Merge tag 'fuse-update-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse

Pull fuse updates from Miklos Szeredi: - Fix a possible of deadlock in case inode writeback is in progress during dentry reclaim - Fix a crash in case of page stealing - Selectively invalidate cached attributes, possibly improving performance - Allow filesystems to disable data flushing from ->flush() - Misc fixes and cleanups * tag 'fuse-update-5.16' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: (23 commits) fuse: fix page stealing virtiofs: use strscpy for copying the queue name fuse: add FOPEN_NOFLUSH fuse: only update necessary attributes fuse: take cache_mask into account in getattr fuse: add cache_mask fuse: move reverting attributes to fuse_change_attributes() fuse: simplify local variables holding writeback cache state fuse: cleanup code conditional on fc->writeback_cache fuse: fix attr version comparison in fuse_read_update_size() fuse: always invalidate attributes after writes fuse: rename fuse_write_update_size() fuse: don't bump attr_version in cached write fuse: selective attribute invalidation fuse: don't increment nlink in link() fuse: decrement nlink on overwriting rename fuse: simplify __fuse_write_file_get() fuse: move fuse_invalidate_attr() into fuse_update_ctime() fuse: delete redundant code fuse: use kmap_local_page() ...

Linus Torvalds committed 5 years ago

Commit cdd39b02 parents a0c7d4a 712a95111 files · +203 −151Browse files

Showing the changes to include/uapi/linux (1 of 11 files). Show all

Unified · Split

include/uapi/linux/fuse.h+6−1
@@ -184,6 +184,9 @@ · 183 unmodified lines
184184 *
185185 * 7.34
186186 * - add FUSE_SYNCFS
187+ *
188+ * 7.35
189+ * - add FOPEN_NOFLUSH
187190 */
188191
189192 #ifndef _LINUX_FUSE_H
@@ -219,7 +222,7 @@ · 29 unmodified lines
219222 #define FUSE_KERNEL_VERSION 7
220223
221224 /** Minor version number of this interface */
222−#define FUSE_KERNEL_MINOR_VERSION 34
225+#define FUSE_KERNEL_MINOR_VERSION 35
223226
224227 /** The node ID of the root inode */
225228 #define FUSE_ROOT_ID 1
@@ -290,12 +293,14 @@ struct fuse_file_lock { · 64 unmodified lines
290293 * FOPEN_NONSEEKABLE: the file is not seekable
291294 * FOPEN_CACHE_DIR: allow caching this directory
292295 * FOPEN_STREAM: the file is stream-like (no file position at all)
296+ * FOPEN_NOFLUSH: don't flush data cache on close (unless FUSE_WRITEBACK_CACHE)
293297 */
294298 #define FOPEN_DIRECT_IO (1 << 0)
295299 #define FOPEN_KEEP_CACHE (1 << 1)
296300 #define FOPEN_NONSEEKABLE (1 << 2)
297301 #define FOPEN_CACHE_DIR (1 << 3)
298302 #define FOPEN_STREAM (1 << 4)
303+#define FOPEN_NOFLUSH (1 << 5)
299304
300305 /**
301306 * INIT request/reply flags