]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
fusefs: cache file attributes
authorasomers <asomers@FreeBSD.org>
Mon, 8 Apr 2019 18:45:41 +0000 (18:45 +0000)
committerasomers <asomers@FreeBSD.org>
Mon, 8 Apr 2019 18:45:41 +0000 (18:45 +0000)
commit6aa968104b1f787aea049bc1fbe2d4afc4159664
treea9a123b0ef2b4a7751458905cfd0433406947cba
parent6ab835e37a2908a6947a78f8ca8e62bfeb11c500
fusefs: cache file attributes

FUSE_LOOKUP, FUSE_GETATTR, FUSE_SETATTR, FUSE_MKDIR, FUSE_LINK,
FUSE_SYMLINK, FUSE_MKNOD, and FUSE_CREATE all return file attributes with a
cache validity period.  fusefs will now cache the attributes, if the server
returns a non-zero cache validity period.

This change does _not_ implement finite attr cache timeouts.  That will
follow as part of PR 235773.

PR: 235775
Reported by: cem
Sponsored by: The FreeBSD Foundation
20 files changed:
sys/fs/fuse/fuse_internal.c
sys/fs/fuse/fuse_internal.h
sys/fs/fuse/fuse_node.c
sys/fs/fuse/fuse_node.h
sys/fs/fuse/fuse_vnops.c
tests/sys/fs/fusefs/allow_other.cc
tests/sys/fs/fusefs/create.cc
tests/sys/fs/fusefs/default_permissions.cc
tests/sys/fs/fusefs/flush.cc
tests/sys/fs/fusefs/fsync.cc
tests/sys/fs/fusefs/getattr.cc
tests/sys/fs/fusefs/locks.cc
tests/sys/fs/fusefs/lookup.cc
tests/sys/fs/fusefs/open.cc
tests/sys/fs/fusefs/read.cc
tests/sys/fs/fusefs/release.cc
tests/sys/fs/fusefs/setattr.cc
tests/sys/fs/fusefs/unlink.cc
tests/sys/fs/fusefs/utils.cc
tests/sys/fs/fusefs/write.cc