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

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

 



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




[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