Hi Linus, Please pull from: git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git tags/fuse-update-5.1 Scalability and performance improvements, as well as minor bug fixes and cleanups. Thanks, Miklos ---------------------------------------------------------------- Chad Austin (2): fuse: support clients that don't implement 'opendir' fuse: cache readdir calls if filesystem opts out of opendir Kirill Tkhai (12): fuse: Replace page without copying in fuse_writepage_in_flight() fuse: Remove stale comment in end_requests() fuse: Kill fasync only if interrupt is queued in queue_interrupt() fuse: Optimize request_end() by not taking fiq->waitq.lock fuse: Wake up req->waitq of only if not background fuse: Do some refactoring in fuse_dev_do_write() fuse: Verify userspace asks to requeue interrupt that we really sent fuse: Add fuse_inode argument to fuse_prepare_release() fuse: Convert fc->attr_version into atomic64_t fuse: Introduce fi->lock to protect write related fields fuse: Protect fi->nlookup with fi->lock fuse: Protect ff->reserved_req via corresponding fi->lock Martin Raiber (1): fuse: Switch to using async direct IO for FOPEN_DIRECT_IO Miklos Szeredi (10): fuse: extract fuse_find_writeback() helper fuse: clean up fuse_writepage_in_flight() fuse: only reuse auxiliary request in fuse_writepage_in_flight() fuse: fix leaked aux requests fuse: clean up aborted fuse: use atomic64_t for khctr fuse: use iov_iter based generic splice helpers fuse add copy_file_range to direct io fops fuse: multiplex cached/direct_io file operations fuse: lift bad inode checks into callers --- fs/fuse/control.c | 4 +- fs/fuse/cuse.c | 7 +- fs/fuse/dev.c | 115 +++++++++------- fs/fuse/dir.c | 54 +++----- fs/fuse/file.c | 342 ++++++++++++++++++++++++++-------------------- fs/fuse/fuse_i.h | 28 ++-- fs/fuse/inode.c | 26 ++-- fs/fuse/readdir.c | 4 +- include/uapi/linux/fuse.h | 7 +- 9 files changed, 327 insertions(+), 260 deletions(-)