[0/9,V6] New ->fiemap infrastructure and ->bmap removal
mbox series

Message ID 20190911134315.27380-1-cmaiolino@redhat.com
Headers show
Series
  • New ->fiemap infrastructure and ->bmap removal
Related show

Message

Carlos Maiolino Sept. 11, 2019, 1:43 p.m. UTC
Hi.

This is the 6th version of the complete series with the goal to deprecate and
eventually remove ->bmap() interface, in lieu if FIEMAP.

This V6, compared with the previous one, is rebased agains next-20190904, and
addresses a few issues found by kbuild test robot, and other points discussed in
previous version.

Detailed information are in each patch description, but the biggest change
in this version is the removal of FIEMAP_KERNEL_FIBMAP flag in patch 8, so,
reducing patch's complexity and avoiding any specific filesystem modification.

The impact of such change is further detailed in patch 8.

Carlos Maiolino (9):
  fs: Enable bmap() function to properly return errors
  cachefiles: drop direct usage of ->bmap method.
  ecryptfs: drop direct calls to ->bmap
  fibmap: Use bmap instead of ->bmap method in ioctl_fibmap
  fs: Move start and length fiemap fields into fiemap_extent_info
  iomap: Remove length and start fields from iomap_fiemap
  fiemap: Use a callback to fill fiemap extents
  Use FIEMAP for FIBMAP calls
  xfs: Get rid of ->bmap

 drivers/md/md-bitmap.c |  16 +++---
 fs/bad_inode.c         |   3 +-
 fs/btrfs/inode.c       |   5 +-
 fs/cachefiles/rdwr.c   |  27 +++++-----
 fs/cifs/cifsfs.h       |   3 +-
 fs/cifs/inode.c        |   5 +-
 fs/ecryptfs/mmap.c     |  16 +++---
 fs/ext2/ext2.h         |   3 +-
 fs/ext2/inode.c        |   6 +--
 fs/ext4/ext4.h         |   6 +--
 fs/ext4/extents.c      |  18 +++----
 fs/ext4/ioctl.c        |   8 +--
 fs/f2fs/data.c         |  21 +++++---
 fs/f2fs/f2fs.h         |   3 +-
 fs/gfs2/inode.c        |   5 +-
 fs/hpfs/file.c         |   4 +-
 fs/inode.c             | 108 +++++++++++++++++++++++++++++++++++-----
 fs/ioctl.c             | 109 ++++++++++++++++++++++++-----------------
 fs/iomap/fiemap.c      |   4 +-
 fs/jbd2/journal.c      |  22 ++++++---
 fs/nilfs2/inode.c      |   5 +-
 fs/nilfs2/nilfs.h      |   3 +-
 fs/ocfs2/extent_map.c  |   6 ++-
 fs/ocfs2/extent_map.h  |   3 +-
 fs/overlayfs/inode.c   |   5 +-
 fs/xfs/xfs_aops.c      |  24 ---------
 fs/xfs/xfs_iops.c      |  14 ++----
 fs/xfs/xfs_trace.h     |   1 -
 include/linux/fs.h     |  38 +++++++++-----
 include/linux/iomap.h  |   2 +-
 mm/page_io.c           |  11 +++--
 31 files changed, 304 insertions(+), 200 deletions(-)

Comments

Carlos Maiolino Sept. 27, 2019, 8:59 a.m. UTC | #1
On Wed, Sep 11, 2019 at 03:43:06PM +0200, Carlos Maiolino wrote:

Hi Folks.

Is there anything else needed here to get a review on the remaining patches?


Cheeers.


> Hi.
> 
> This is the 6th version of the complete series with the goal to deprecate and
> eventually remove ->bmap() interface, in lieu if FIEMAP.
> 
> This V6, compared with the previous one, is rebased agains next-20190904, and
> addresses a few issues found by kbuild test robot, and other points discussed in
> previous version.
> 
> Detailed information are in each patch description, but the biggest change
> in this version is the removal of FIEMAP_KERNEL_FIBMAP flag in patch 8, so,
> reducing patch's complexity and avoiding any specific filesystem modification.
> 
> The impact of such change is further detailed in patch 8.
> 
> Carlos Maiolino (9):
>   fs: Enable bmap() function to properly return errors
>   cachefiles: drop direct usage of ->bmap method.
>   ecryptfs: drop direct calls to ->bmap
>   fibmap: Use bmap instead of ->bmap method in ioctl_fibmap
>   fs: Move start and length fiemap fields into fiemap_extent_info
>   iomap: Remove length and start fields from iomap_fiemap
>   fiemap: Use a callback to fill fiemap extents
>   Use FIEMAP for FIBMAP calls
>   xfs: Get rid of ->bmap
> 
>  drivers/md/md-bitmap.c |  16 +++---
>  fs/bad_inode.c         |   3 +-
>  fs/btrfs/inode.c       |   5 +-
>  fs/cachefiles/rdwr.c   |  27 +++++-----
>  fs/cifs/cifsfs.h       |   3 +-
>  fs/cifs/inode.c        |   5 +-
>  fs/ecryptfs/mmap.c     |  16 +++---
>  fs/ext2/ext2.h         |   3 +-
>  fs/ext2/inode.c        |   6 +--
>  fs/ext4/ext4.h         |   6 +--
>  fs/ext4/extents.c      |  18 +++----
>  fs/ext4/ioctl.c        |   8 +--
>  fs/f2fs/data.c         |  21 +++++---
>  fs/f2fs/f2fs.h         |   3 +-
>  fs/gfs2/inode.c        |   5 +-
>  fs/hpfs/file.c         |   4 +-
>  fs/inode.c             | 108 +++++++++++++++++++++++++++++++++++-----
>  fs/ioctl.c             | 109 ++++++++++++++++++++++++-----------------
>  fs/iomap/fiemap.c      |   4 +-
>  fs/jbd2/journal.c      |  22 ++++++---
>  fs/nilfs2/inode.c      |   5 +-
>  fs/nilfs2/nilfs.h      |   3 +-
>  fs/ocfs2/extent_map.c  |   6 ++-
>  fs/ocfs2/extent_map.h  |   3 +-
>  fs/overlayfs/inode.c   |   5 +-
>  fs/xfs/xfs_aops.c      |  24 ---------
>  fs/xfs/xfs_iops.c      |  14 ++----
>  fs/xfs/xfs_trace.h     |   1 -
>  include/linux/fs.h     |  38 +++++++++-----
>  include/linux/iomap.h  |   2 +-
>  mm/page_io.c           |  11 +++--
>  31 files changed, 304 insertions(+), 200 deletions(-)
> 
> -- 
> 2.20.1
>
Christoph Hellwig Sept. 30, 2019, 8:10 a.m. UTC | #2
On Fri, Sep 27, 2019 at 10:59:10AM +0200, Carlos Maiolino wrote:
> On Wed, Sep 11, 2019 at 03:43:06PM +0200, Carlos Maiolino wrote:
> 
> Hi Folks.
> 
> Is there anything else needed here to get a review on the remaining patches?

Well, we'll need to sort out the don't allow bmap on the rtdev problem
somehow.