Linux-Fsdevel Archive on lore.kernel.org
help / color / mirror / Atom feed
* [PATCH 00/10] gfs2 iomap buffered write support
@ 2018-01-11 21:14 Andreas Gruenbacher
  2018-01-11 21:14 ` [PATCH 01/10] gfs2: Typo fixes Andreas Gruenbacher
                   ` (12 more replies)
  0 siblings, 13 replies; 17+ messages in thread
From: Andreas Gruenbacher @ 2018-01-11 21:14 UTC (permalink / raw)
  To: cluster-devel, Christoph Hellwig; +Cc: Andreas Gruenbacher, linux-fsdevel

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)

 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

-- 
2.14.3

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2018-01-12 10:26 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-11 21:14 [PATCH 00/10] gfs2 iomap buffered write support Andreas Gruenbacher
2018-01-11 21:14 ` [PATCH 01/10] gfs2: Typo fixes Andreas Gruenbacher
2018-01-11 21:14 ` [PATCH 02/10] gfs2: Add gfs2_max_stuffed_size Andreas Gruenbacher
2018-01-11 21:14 ` [PATCH 03/10] gfs2: Minor gfs2_page_add_databufs cleanup Andreas Gruenbacher
2018-01-11 21:14 ` [PATCH 04/10] gfs2: gfs2_stuffed_write_end cleanup Andreas Gruenbacher
2018-01-11 21:14 ` [PATCH 05/10] gfs2: gfs2_stuffed_write_end cleanup (fixup) Andreas Gruenbacher
2018-01-11 21:15 ` [PATCH 06/10] gfs2: Remove ordered write mode handling from gfs2_trans_add_data Andreas Gruenbacher
2018-01-11 21:15 ` [PATCH 07/10] gfs2: Iomap cleanups and improvements Andreas Gruenbacher
2018-01-11 21:15 ` [PATCH 08/10] iomap: New iomap_written operation Andreas Gruenbacher
2018-01-11 21:53   ` Dave Chinner
2018-01-11 21:15 ` [PATCH 09/10] gfs2: Implement buffered iomap write support (1) Andreas Gruenbacher
2018-01-11 21:19   ` Andreas Grünbacher
2018-01-11 21:15 ` [PATCH 09/10] gfs2: Implement iomap buffered " Andreas Gruenbacher
2018-01-11 21:15 ` [PATCH 10/10] gfs2: Implement buffered iomap write support (2) Andreas Gruenbacher
2018-01-11 21:20   ` Andreas Gruenbacher
2018-01-11 21:15 ` [PATCH 10/10] gfs2: Implement iomap buffered " Andreas Gruenbacher
2018-01-12 10:26 ` [Cluster-devel] [PATCH 00/10] gfs2 iomap buffered write support Steven Whitehouse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).