diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/fuse_common.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/include/fuse_common.h b/include/fuse_common.h index 2d686b2..77d4bfe 100644 --- a/include/fuse_common.h +++ b/include/fuse_common.h @@ -359,6 +359,29 @@ struct fuse_loop_config { #define FUSE_CAP_NO_OPENDIR_SUPPORT (1 << 24) /** + * Indicates support for invalidating cached pages only on explicit request. + * + * If this flag is set in the `capable` field of the `fuse_conn_info` structure, + * then the FUSE kernel module supports invalidating cached pages only on + * explicit request by the filesystem through fuse_lowlevel_notify_inval_inode() + * or fuse_invalidate_path(). + * + * By setting this flag in the `want` field of the `fuse_conn_info` structure, + * the filesystem is responsible for invalidating cached pages through explicit + * requests to the kernel. + * + * Note that setting this flag does not prevent the cached pages from being + * flushed by OS itself and/or through user actions. + * + * Note that if both FUSE_CAP_EXPLICIT_INVAL_DATA and FUSE_CAP_AUTO_INVAL_DATA + * are set in the `capable` field of the `fuse_conn_info` structure then + * FUSE_CAP_AUTO_INVAL_DATA takes precedence. + * + * This feature is disabled by default. + */ +#define FUSE_CAP_EXPLICIT_INVAL_DATA (1 << 25) + +/** * Ioctl flags * * FUSE_IOCTL_COMPAT: 32bit compat ioctl on 64bit machine |