]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
fusefs: support asynchronous cache invalidation
authorasomers <asomers@FreeBSD.org>
Mon, 3 Jun 2019 17:34:01 +0000 (17:34 +0000)
committerasomers <asomers@FreeBSD.org>
Mon, 3 Jun 2019 17:34:01 +0000 (17:34 +0000)
commit3400bbe1aa169b68355da53357591617b24c0d6b
treebe2f181fe1e6576d03de119f7da5170af5150097
parent1d922c79a8c799947a2691c4321e0e32ca7372f4
fusefs: support asynchronous cache invalidation

Protocol 7.12 adds a way for the server to notify the client that it should
invalidate an inode's data cache and/or attributes.  This commit implements
that mechanism.  Unlike Linux's implementation, ours requires that the file
system also supports FUSE_EXPORT_SUPPORT (NFS-style lookups).  Otherwise the
invalidation operation will return EINVAL.

Sponsored by: The FreeBSD Foundation
sys/fs/fuse/fuse_device.c
sys/fs/fuse/fuse_internal.c
sys/fs/fuse/fuse_internal.h
sys/fs/fuse/fuse_vfsops.c
tests/sys/fs/fusefs/mockfs.cc
tests/sys/fs/fusefs/mockfs.hh
tests/sys/fs/fusefs/notify.cc