linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/56] Filesystem folio conversions for 5.18
@ 2022-02-09 20:21 Matthew Wilcox (Oracle)
  2022-02-09 20:21 ` [PATCH 01/56] Convert NFS from readpages to readahead Matthew Wilcox (Oracle)
                   ` (57 more replies)
  0 siblings, 58 replies; 63+ messages in thread
From: Matthew Wilcox (Oracle) @ 2022-02-09 20:21 UTC (permalink / raw)
  To: linux-fsdevel; +Cc: Matthew Wilcox (Oracle)

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


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

end of thread, other threads:[~2022-02-25 14:52 UTC | newest]

Thread overview: 63+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-09 20:21 [PATCH 00/56] Filesystem folio conversions for 5.18 Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 01/56] Convert NFS from readpages to readahead Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 02/56] readahead: Remove read_cache_pages() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 03/56] iomap: Fix iomap_invalidatepage tracepoint Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 04/56] fs: read_mapping_page() should take a struct file argument Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 05/56] fs/remap_range: Pass the file pointer to read_mapping_folio() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 06/56] scsicam: Fix use of page cache Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 07/56] buffer: Add folio_buffers() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 08/56] fs: Convert is_partially_uptodate to folios Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 09/56] fs: Turn do_invalidatepage() into folio_invalidate() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 10/56] btrfs: Use folio_invalidate() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 11/56] ceph: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 12/56] ext4: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 13/56] fs: Add invalidate_folio() aops method Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 14/56] iomap: Remove iomap_invalidatepage() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 15/56] fs: Turn block_invalidatepage into block_invalidate_folio Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 16/56] fs: Remove noop_invalidatepage() Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 17/56] 9p: Convert to invalidate_folio Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 18/56] afs: Convert directory aops " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 19/56] afs: Convert invalidatepage " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 20/56] btrfs: Convert from " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 21/56] ceph: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 22/56] cifs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 23/56] erofs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 24/56] ext4: Convert " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 25/56] f2fs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 26/56] gfs2: " Matthew Wilcox (Oracle)
2022-02-10 12:42   ` Bob Peterson
2022-02-09 20:21 ` [PATCH 27/56] jfs: Convert from " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 28/56] nfs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 29/56] orangefs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 30/56] reiserfs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 31/56] ubifs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 32/56] fs: Remove aops->invalidatepage Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 33/56] fs: Add aops->launder_folio Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 34/56] 9p: Convert from launder_page to launder_folio Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 35/56] afs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 36/56] cifs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 37/56] fuse: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 38/56] nfs: " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 39/56] orangefs: Convert " Matthew Wilcox (Oracle)
2022-02-09 20:21 ` [PATCH 40/56] fs: Remove aops->launder_page Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 41/56] fs: Add aops->dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 42/56] fscache: Convert fscache_set_page_dirty() to fscache_dirty_folio() Matthew Wilcox (Oracle)
2022-02-14  7:02   ` John Hubbard
2022-02-14 14:12     ` Matthew Wilcox
2022-02-09 20:22 ` [PATCH 43/56] btrfs: Convert from set_page_dirty to dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 44/56] fs: Convert trivial uses of __set_page_dirty_nobuffers to filemap_dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 45/56] btrfs: Convert extent_range_redirty_for_io() to use folios Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 46/56] afs: Convert afs_dir_set_page_dirty() to afs_dir_dirty_folio() Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 47/56] f2fs: Convert f2fs_set_meta_page_dirty to f2fs_dirty_meta_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 48/56] f2fs: Convert f2fs_set_data_page_dirty to f2fs_dirty_data_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 49/56] f2fs: Convert f2fs_set_node_page_dirty to f2fs_dirty_node_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 50/56] ubifs: Convert ubifs_set_page_dirty to ubifs_dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 51/56] mm: Convert swap_set_page_dirty() to swap_dirty_folio() Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 52/56] nilfs: Convert nilfs_set_page_dirty() to nilfs_dirty_folio() Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 53/56] fs: Convert __set_page_dirty_buffers to block_dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 54/56] fs: Convert __set_page_dirty_no_writeback to noop_dirty_folio Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 55/56] fb_defio: Use noop_dirty_folio() Matthew Wilcox (Oracle)
2022-02-09 20:22 ` [PATCH 56/56] fs: Remove aops ->set_page_dirty Matthew Wilcox (Oracle)
2022-02-10  4:31 ` [PATCH 00/56] Filesystem folio conversions for 5.18 Damien Le Moal
2022-02-14 14:19 ` Matthew Wilcox
2022-02-25 14:52   ` Mike Marshall

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