linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] gfs2 iomap: fiemap and lseek
@ 2017-06-07 14:11 Andreas Gruenbacher
  2017-06-07 14:11 ` [PATCH 1/4] GFS2: Make height info part of metapath Andreas Gruenbacher
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Andreas Gruenbacher @ 2017-06-07 14:11 UTC (permalink / raw)
  To: cluster-devel; +Cc: Andreas Gruenbacher, Christoph Hellwig, linux-fsdevel

Here's an update of a patch queue that implements iomap in gfs2, switches
fiemap over to use iomap, and now also implements lseek SEEK_HOLE and SEEK_DATA
on top of iomap as well.  Several issues with the previous version of this
patch queue have been fixed:

 * Adds a IOMAP_F_BOUNDARY iomap flag that indicates when iomap has reached
   a "metadata boundary", and fetching the next mapping is likely to incur an
   additional I/O.  This flag is used to set the bh buffer boundary flag.

 * lseek SEEK_HOLE / SEEK_DATA is now implemented using a vfs helper and some
   filesystem wiring-up code.  This could be made generic if the iomap_ops are
   exposed at the vfs level.

 * Rounding fixes now that gfs2_get_iomap takes byte numbers instead of block
   numbers.
   
 * Fixes to make gfs2_get_iomap work beyond EOF (needed for allocations).

 * Glock lock taking has been moved from gfs2_get_iomap to its callers; it
   made no sense to drop glocks when iterating mappings.

 * The gfs2_iomap tracepoint is now split into gfs2_iomap_start and
   gfs2_iomap_end.

This patch queue still doesn't handle multi-page writes via iomap, but having
reasonable fiemap and lseek implementations is a start at least.

Thanks,
Andreas


Andreas Gruenbacher (1):
  gfs2: Implement lseek SEEK_HOLE / SEEK_DATA via iomap

Bob Peterson (3):
  GFS2: Make height info part of metapath
  GFS2: Implement iomap for block_map
  GFS2: Switch fiemap implementation to use iomap

 fs/gfs2/Kconfig       |   1 +
 fs/gfs2/bmap.c        | 292 ++++++++++++++++++++++++++++++++++++--------------
 fs/gfs2/bmap.h        |   4 +
 fs/gfs2/file.c        |  14 ++-
 fs/gfs2/inode.c       |  54 ++++++++--
 fs/gfs2/inode.h       |   1 +
 fs/gfs2/trace_gfs2.h  |  65 +++++++++++
 fs/iomap.c            |  55 ++++++++++
 include/linux/iomap.h |   5 +-
 9 files changed, 398 insertions(+), 93 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2017-06-07 14:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-07 14:11 [PATCH 0/4] gfs2 iomap: fiemap and lseek Andreas Gruenbacher
2017-06-07 14:11 ` [PATCH 1/4] GFS2: Make height info part of metapath Andreas Gruenbacher
2017-06-07 14:11 ` [PATCH 2/4] GFS2: Implement iomap for block_map Andreas Gruenbacher
2017-06-07 14:11 ` [PATCH 3/4] GFS2: Switch fiemap implementation to use iomap Andreas Gruenbacher
2017-06-07 14:11 ` [PATCH 4/4] gfs2: Implement lseek SEEK_HOLE / SEEK_DATA via iomap Andreas Gruenbacher
2017-06-07 14:15   ` Christoph Hellwig

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).