[Cluster-devel] [PATCH v2 0/6] gfs2 iomap buffered write support

Andreas Gruenbacher agruenba at redhat.com
Mon Jan 29 22:18:38 UTC 2018


Hello,

this patch queue converts gfs2 to use iomap for buffered writes, which
uses multi-page block allocations for large writes instead of a separate
allocation for each page of data.

Apply on top of the current gfs2 for-next branch:

  https://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git/log/?h=for-next

Changes since v1:

 * Add write_begin and write_end iomap operations instead of the minimal
   iomap_written operation from the prevous patch queue.  These
   operations need to be wired up by filesystems that implement writes
   over iomap.

 * Several bug fixes in the gfs2 specific patches.

This patch queue doesn't convert direct I/O, so we still have a
remaining user of the old gfs2_write_begin / gfs2_write_end interface
left.  Once direct I/O is converted to iomap, we'll get rid of some more
old code.

Thanks,
Andreas

Andreas Gruenbacher (6):
  gfs2: gfs2_stuffed_write_end cleanup
  gfs2: Remove ordered write mode handling from gfs2_trans_add_data
  gfs2: Iomap cleanups and improvements
  iomap: Add write_{begin,end} iomap operations
  gfs2: Implement iomap buffered write support (1)
  gfs2: Implement iomap buffered write support (2)

 fs/ext2/inode.c       |   2 +
 fs/ext4/inode.c       |   2 +
 fs/gfs2/aops.c        | 154 +++++++++++++++-----
 fs/gfs2/aops.h        |  19 +++
 fs/gfs2/bmap.c        | 392 ++++++++++++++++++++++++++++++++++++++------------
 fs/gfs2/bmap.h        |   5 +-
 fs/gfs2/file.c        |  47 +++++-
 fs/gfs2/inode.c       |   4 -
 fs/gfs2/log.h         |   7 +-
 fs/gfs2/quota.c       |   5 +-
 fs/gfs2/trans.c       |  27 ++--
 fs/iomap.c            |  62 +++++---
 fs/xfs/xfs_iomap.c    |   2 +
 include/linux/iomap.h |  22 +++
 14 files changed, 571 insertions(+), 179 deletions(-)
 create mode 100644 fs/gfs2/aops.h

-- 
2.14.3




More information about the Cluster-devel mailing list