fuse: enable caching of symlinks
authorDan Schatzberg <dschatzberg@fb.com>
Thu, 11 Oct 2018 15:17:00 +0000 (08:17 -0700)
committerMiklos Szeredi <mszeredi@redhat.com>
Mon, 15 Oct 2018 13:43:07 +0000 (15:43 +0200)
commit5571f1e65486be025f73fa6aa30fb03725d362a2
treef5cf8954baf0697386ea6421011fe34d32be2526
parent9a2eb24d1a349f53e20f3d4503568551561eed23
fuse: enable caching of symlinks

FUSE file reads are cached in the page cache, but symlink reads are
not. This patch enables FUSE READLINK operations to be cached which
can improve performance of some FUSE workloads.

In particular, I'm working on a FUSE filesystem for access to source
code and discovered that about a 10% improvement to build times is
achieved with this patch (there are a lot of symlinks in the source
tree).

Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/fuse/dir.c
fs/fuse/fuse_i.h
fs/fuse/inode.c
include/uapi/linux/fuse.h