[Cluster-devel] [PATCH 0/4] gfs2 iomap: fiemap and lseek

Andreas Gruenbacher <[email protected]>
Newsgroups com.redhat.cluster-devel
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.