[PATCH 00/14] cifs: Iterators, netfslib and folios

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Here's a set of patches to make the following changes to the cifs
filesystem driver:

 (1) Convert cifs to use I/O iterators to pass data/buffers from the the VM
     interface layer down to the socket rather than passing page lists
     about.

 (2) Convert cifs to use netfslib for buffered and direct read operations.

 (3) A partial conversion to folios.

This branch is built on top of my netfs-lib branch[1].

The patches can be found here also:

	https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=cifs-experimental


David

Link: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=netfs-lib [1]
---
David Howells (14):
      cifs: Add some helper functions
      cifs: Add a function to read into an iter from a socket
      cifs: Check the IOCB_DIRECT flag, not O_DIRECT
      cifs: Change the I/O paths to use an iterator rather than a page list
      cifs: Remove unused code
      cifs: Use netfslib to handle reads
      cifs: Share server EOF pos with netfslib
      netfs: Allow the netfs to make the io (sub)request alloc larger
      cifs: Put credits into cifs_io_subrequest, not on the stack
      cifs: Hold the open file on netfs_io_request, not netfs_io_subrequest
      cifs: Clamp length according to credits and rsize
      cifs: Expose netfs subrequest debug ID and index in read tracepoints
      cifs: Split the smb3_add_credits tracepoint
      mm, netfs, fscache: Stop read optimisation when folio removed from pagecache


 fs/afs/file.c           |    1 +
 fs/afs/inode.c          |    1 +
 fs/afs/internal.h       |    2 +
 fs/cifs/Kconfig         |    1 +
 fs/cifs/cifsencrypt.c   |   40 +-
 fs/cifs/cifsfs.c        |   11 +-
 fs/cifs/cifsfs.h        |    6 +-
 fs/cifs/cifsglob.h      |   53 +-
 fs/cifs/cifsproto.h     |   13 +-
 fs/cifs/cifssmb.c       |  252 +++--
 fs/cifs/connect.c       |   18 +-
 fs/cifs/file.c          | 2096 ++++++++++-----------------------------
 fs/cifs/fscache.c       |  120 +--
 fs/cifs/fscache.h       |   70 --
 fs/cifs/inode.c         |   22 +-
 fs/cifs/misc.c          |  109 --
 fs/cifs/smb2ops.c       |  387 ++++----
 fs/cifs/smb2pdu.c       |   85 +-
 fs/cifs/smb2proto.h     |    2 +-
 fs/cifs/trace.h         |  151 ++-
 fs/cifs/transport.c     |   41 +-
 fs/netfs/internal.h     |    1 +
 fs/netfs/io.c           |    7 +-
 fs/netfs/misc.c         |   13 +-
 fs/netfs/stats.c        |    9 +-
 include/linux/fs.h      |    2 +
 include/linux/netfs.h   |    1 +
 include/linux/pagemap.h |    1 +
 mm/filemap.c            |   15 +
 29 files changed, 1203 insertions(+), 2327 deletions(-)





[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux