Re: [Cluster-devel] [PATCH 00/10] gfs2 iomap buffered write support

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

 



Hi,


On 11/01/18 21:14, Andreas Gruenbacher wrote:
Hello,

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

The patches apply on top of the gfs2 punch-hole patch queue [*].

So far, the only user of iomap_file_buffered_write was xfs, which
doesn't do data journaling.  To support gfs2's data journaling, patch
08/10 adds a new iomap_written iomap operation: if defined, this
operation is called by iomap_file_buffered_write whenever a page has
been written to.

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 has been converted to use iomap, we'll get rid of
that code, though.

Thanks,
Andreas

[*] https://www.redhat.com/archives/cluster-devel/2017-December/msg00089.html

Andreas Gruenbacher (10):
   gfs2: Typo fixes
   gfs2: Add gfs2_max_stuffed_size
   gfs2: Minor gfs2_page_add_databufs cleanup
   gfs2: gfs2_stuffed_write_end cleanup
   gfs2: gfs2_stuffed_write_end cleanup (fixup)
   gfs2: Remove ordered write mode handling from gfs2_trans_add_data
   gfs2: Iomap cleanups and improvements
   iomap: New iomap_written operation
   gfs2: Implement iomap buffered write support (1)
   gfs2: Implement iomap buffered write support (2)
It looks like patches 1 to 3 inclusive could be sent right away as they are worthwhile clean ups in their own right - no need to delay those. Patches 4 and 5 should be merged into one I think. Otherwise it looks like everything is going in the right direction generally, the other comments which have been made notwithstanding,

Steve.


  fs/gfs2/aops.c        | 178 ++++++++++++++++------
  fs/gfs2/aops.h        |  19 +++
  fs/gfs2/bmap.c        | 407 +++++++++++++++++++++++++++++++++++++-------------
  fs/gfs2/bmap.h        |   5 +-
  fs/gfs2/dir.c         |   3 +-
  fs/gfs2/file.c        |  49 +++++-
  fs/gfs2/incore.h      |   5 +
  fs/gfs2/inode.c       |  10 +-
  fs/gfs2/log.h         |   7 +-
  fs/gfs2/quota.c       |   5 +-
  fs/gfs2/trans.c       |  27 +---
  fs/iomap.c            |  21 ++-
  include/linux/iomap.h |   9 ++
  13 files changed, 558 insertions(+), 187 deletions(-)
  create mode 100644 fs/gfs2/aops.h





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