lkml.org 
[lkml]   [2018]   [Oct]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v2] fuse: enable caching of symlinks
On Thu, Oct 11, 2018 at 5:17 PM, Dan Schatzberg <dschatzberg@fb.com> wrote:
> 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).

Pushed a modified version to for-next in the fuse tree.

One important change is to zero-terminate the link (do not rely on
i_size to provide the proper zero termination for fear of a trivial
information leak vector). Other changes are: use of
inode_nohighmem(), which seems to be the idiomatic way of preventing
highmem, and merging the non-cached and cached code paths as much as
possible.

Thanks,
Miklos

\
 
 \ /
  Last update: 2018-10-15 16:51    [W:0.036 / U:0.508 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site