[PATCH 00/56] Filesystem folio conversions for 5.18

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

 



As I threatened ;-) previously, here are a number of filesystem changes
that I'm going to try to push into 5.18.

Trond's going to take the first two through the NFS tree, so I'll drop
them as soon as they appear in -next.  I should probably send patches 3
and 6 as bugfixes before 5.18.  Review & testing appreciated.  This is
all against current Linus tree as of today.  xfstests running now against
xfs, with a root of ext4, so that's at least partially tested.  I probably
shan't do detailed testing of any of the filesystems I modified here since
it's pretty much all mechanical.

Matthew Wilcox (Oracle) (56):
  Convert NFS from readpages to readahead
  readahead: Remove read_cache_pages()
  iomap: Fix iomap_invalidatepage tracepoint
  fs: read_mapping_page() should take a struct file argument
  fs/remap_range: Pass the file pointer to read_mapping_folio()
  scsicam: Fix use of page cache
  buffer: Add folio_buffers()
  fs: Convert is_partially_uptodate to folios
  fs: Turn do_invalidatepage() into folio_invalidate()
  btrfs: Use folio_invalidate()
  ceph: Use folio_invalidate()
  ext4: Use folio_invalidate()
  fs: Add invalidate_folio() aops method
  iomap: Remove iomap_invalidatepage()
  fs: Turn block_invalidatepage into block_invalidate_folio
  fs: Remove noop_invalidatepage()
  9p: Convert to invalidate_folio
  afs: Convert directory aops to invalidate_folio
  afs: Convert invalidatepage to invalidate_folio
  btrfs: Convert from invalidatepage to invalidate_folio
  ceph: Convert from invalidatepage to invalidate_folio
  cifs: Convert from invalidatepage to invalidate_folio
  erofs: Convert from invalidatepage to invalidate_folio
  ext4: Convert invalidatepage to invalidate_folio
  f2fs: Convert invalidatepage to invalidate_folio
  gfs2: Convert invalidatepage to invalidate_folio
  jfs: Convert from invalidatepage to invalidate_folio
  nfs: Convert from invalidatepage to invalidate_folio
  orangefs: Convert from invalidatepage to invalidate_folio
  reiserfs: Convert from invalidatepage to invalidate_folio
  ubifs: Convert from invalidatepage to invalidate_folio
  fs: Remove aops->invalidatepage
  fs: Add aops->launder_folio
  9p: Convert from launder_page to launder_folio
  afs: Convert from launder_page to launder_folio
  cifs: Convert from launder_page to launder_folio
  fuse: Convert from launder_page to launder_folio
  nfs: Convert from launder_page to launder_folio
  orangefs: Convert launder_page to launder_folio
  fs: Remove aops->launder_page
  fs: Add aops->dirty_folio
  fscache: Convert fscache_set_page_dirty() to fscache_dirty_folio()
  btrfs: Convert from set_page_dirty to dirty_folio
  fs: Convert trivial uses of __set_page_dirty_nobuffers to
    filemap_dirty_folio
  btrfs: Convert extent_range_redirty_for_io() to use folios
  afs: Convert afs_dir_set_page_dirty() to afs_dir_dirty_folio()
  f2fs: Convert f2fs_set_meta_page_dirty to f2fs_dirty_meta_folio
  f2fs: Convert f2fs_set_data_page_dirty to f2fs_dirty_data_folio
  f2fs: Convert f2fs_set_node_page_dirty to f2fs_dirty_node_folio
  ubifs: Convert ubifs_set_page_dirty to ubifs_dirty_folio
  mm: Convert swap_set_page_dirty() to swap_dirty_folio()
  nilfs: Convert nilfs_set_page_dirty() to nilfs_dirty_folio()
  fs: Convert __set_page_dirty_buffers to block_dirty_folio
  fs: Convert __set_page_dirty_no_writeback to noop_dirty_folio
  fb_defio: Use noop_dirty_folio()
  fs: Remove aops ->set_page_dirty

 .../filesystems/caching/netfs-api.rst         |   7 +-
 Documentation/filesystems/locking.rst         |  42 +++---
 Documentation/filesystems/vfs.rst             |  46 +++----
 block/fops.c                                  |   3 +-
 drivers/dax/device.c                          |   3 +-
 drivers/scsi/scsicam.c                        |   8 +-
 drivers/video/fbdev/core/fb_defio.c           |   9 +-
 fs/9p/vfs_addr.c                              |  37 ++---
 fs/adfs/inode.c                               |   3 +-
 fs/affs/file.c                                |   6 +-
 fs/afs/dir.c                                  |  18 +--
 fs/afs/file.c                                 |  28 ++--
 fs/afs/internal.h                             |   6 +-
 fs/afs/write.c                                |  10 +-
 fs/aio.c                                      |   2 +-
 fs/bfs/file.c                                 |   3 +-
 fs/btrfs/ctree.h                              |   3 +
 fs/btrfs/disk-io.c                            |  47 +++----
 fs/btrfs/extent-io-tree.h                     |   4 +-
 fs/btrfs/extent_io.c                          |  35 ++---
 fs/btrfs/inode.c                              |  84 ++++++------
 fs/buffer.c                                   |  96 +++++++------
 fs/ceph/addr.c                                |  83 ++++++------
 fs/ceph/cache.h                               |  13 +-
 fs/cifs/file.c                                |  39 +++---
 fs/ecryptfs/mmap.c                            |   5 +-
 fs/erofs/super.c                              |  17 ++-
 fs/exfat/inode.c                              |   3 +-
 fs/ext2/inode.c                               |   9 +-
 fs/ext4/inode.c                               | 127 +++++++++---------
 fs/f2fs/checkpoint.c                          |  31 ++---
 fs/f2fs/compress.c                            |   2 +-
 fs/f2fs/data.c                                |  56 ++++----
 fs/f2fs/f2fs.h                                |   5 +-
 fs/f2fs/node.c                                |  29 ++--
 fs/fat/inode.c                                |   3 +-
 fs/fscache/io.c                               |  28 ++--
 fs/fuse/dax.c                                 |   3 +-
 fs/fuse/dir.c                                 |   2 +-
 fs/fuse/file.c                                |  16 +--
 fs/gfs2/aops.c                                |  43 +++---
 fs/gfs2/meta_io.c                             |   6 +-
 fs/hfs/inode.c                                |   6 +-
 fs/hfsplus/inode.c                            |   6 +-
 fs/hostfs/hostfs_kern.c                       |   2 +-
 fs/hpfs/file.c                                |   3 +-
 fs/hugetlbfs/inode.c                          |   2 +-
 fs/iomap/buffered-io.c                        |  46 +++----
 fs/iomap/trace.h                              |   2 +-
 fs/jbd2/journal.c                             |   2 +-
 fs/jbd2/transaction.c                         |  31 +++--
 fs/jfs/inode.c                                |   3 +-
 fs/jfs/jfs_metapage.c                         |  14 +-
 fs/libfs.c                                    |  15 +--
 fs/minix/inode.c                              |   3 +-
 fs/mpage.c                                    |   2 +-
 fs/nfs/file.c                                 |  34 ++---
 fs/nfs/nfstrace.h                             |   6 +-
 fs/nfs/read.c                                 |  21 +--
 fs/nfs/write.c                                |   8 +-
 fs/nilfs2/inode.c                             |  41 +++---
 fs/nilfs2/mdt.c                               |   3 +-
 fs/ntfs/aops.c                                |  21 ++-
 fs/ntfs3/inode.c                              |   2 +-
 fs/ocfs2/aops.c                               |   4 +-
 fs/omfs/file.c                                |   3 +-
 fs/orangefs/inode.c                           | 121 ++++++++---------
 fs/reiserfs/inode.c                           |  40 +++---
 fs/reiserfs/journal.c                         |   4 +-
 fs/remap_range.c                              |  16 +--
 fs/sysv/itree.c                               |   3 +-
 fs/ubifs/file.c                               |  34 ++---
 fs/udf/file.c                                 |   3 +-
 fs/udf/inode.c                                |   3 +-
 fs/ufs/inode.c                                |   3 +-
 fs/vboxsf/file.c                              |   2 +-
 fs/xfs/xfs_aops.c                             |   7 +-
 fs/zonefs/super.c                             |   4 +-
 include/linux/buffer_head.h                   |   9 +-
 include/linux/fs.h                            |  14 +-
 include/linux/fscache.h                       |   8 +-
 include/linux/iomap.h                         |   5 +-
 include/linux/jbd2.h                          |   4 +-
 include/linux/mm.h                            |   3 -
 include/linux/nfs_fs.h                        |   5 +-
 include/linux/pagemap.h                       |  31 ++++-
 include/linux/swap.h                          |   2 +-
 include/trace/events/ext4.h                   |  30 ++---
 mm/filemap.c                                  |   8 +-
 mm/page-writeback.c                           |  36 +++--
 mm/page_io.c                                  |  15 ++-
 mm/readahead.c                                |  76 -----------
 mm/rmap.c                                     |   4 +-
 mm/secretmem.c                                |   2 +-
 mm/shmem.c                                    |   2 +-
 mm/swap_state.c                               |   2 +-
 mm/truncate.c                                 |  42 +++---
 97 files changed, 871 insertions(+), 967 deletions(-)

-- 
2.34.1




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux