From 91083df90eadc0e69e4ce6956f823a2acb602f25 Mon Sep 17 00:00:00 2001 From: HereThereBeDragons Date: Thu, 27 Oct 2022 17:52:10 +0200 Subject: adding comments and capability discovery, enum for flags moved to top of file --- include/fuse_common.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'include/fuse_common.h') diff --git a/include/fuse_common.h b/include/fuse_common.h index e9d8745..dbba05a 100644 --- a/include/fuse_common.h +++ b/include/fuse_common.h @@ -408,6 +408,22 @@ struct fuse_loop_config_v1 { */ #define FUSE_CAP_EXPLICIT_INVAL_DATA (1 << 25) +/** + * Indicates support that dentries can be expired or invalidated. + * + * Expiring dentries, instead of invalidating them, makes a difference for + * overmounted dentries, where plain invalidation would detach all submounts + * before dropping the dentry from the cache. If only expiry is set on the + * dentry, then any overmounts are left alone and until ->d_revalidate() + * is called. + * + * Note: ->d_revalidate() is not called for the case of following a submount, + * so invalidation will only be triggered for the non-overmounted case. + * The dentry could also be mounted in a different mount instance, in which case + * any submounts will still be detached. +*/ +#define FUSE_CAP_EXPIRE_ONLY (1 << 26) + /** * Ioctl flags * -- cgit v1.2.3