mbox series

[00/12] nilfs2: Finish folio conversion

Message ID 20241024092602.13395-1-konishi.ryusuke@gmail.com (mailing list archive)
Headers show
Series nilfs2: Finish folio conversion | expand

Message

Ryusuke Konishi Oct. 24, 2024, 9:25 a.m. UTC
Andrew, please queue this series for the next cycle.

This series converts all remaining page structure references in nilfs2
to folio-based, except for nilfs_copy_buffer function, which was
converted to use folios in advance for cross-fs page flags cleanup.

This prioritizes folio conversion, and does not include buffer head
reference reduction, nor does it support for block sizes larger than
the system page size.

The first eight patches in this series mainly convert each of the
nilfs2-specific metadata implementations to use folios.  The last four
patches, by Matthew Wilcox, eliminate aops writepage callbacks and
convert the remaining page structure references to folio-based.  This
part reflects some corrections to the patch series posted by Matthew.

It has passed operation checks and load tests with different block
sizes on multiple environments, including 32-bit kernel, and is
sufficiently stable.

Thanks,
Ryusuke Konishi


Matthew Wilcox (Oracle) (4):
  nilfs2: Remove nilfs_writepage
  nilfs2: Convert nilfs_page_count_clean_buffers() to take a folio
  nilfs2: Convert nilfs_recovery_copy_block() to take a folio
  nilfs2: Convert metadata aops from writepage to writepages

Ryusuke Konishi (8):
  nilfs2: convert segment buffer to be folio-based
  nilfs2: convert common metadata file code to be folio-based
  nilfs2: convert segment usage file to be folio-based
  nilfs2: convert persistent object allocator to be folio-based
  nilfs2: convert inode file to be folio-based
  nilfs2: convert DAT file to be folio-based
  nilfs2: remove nilfs_palloc_block_get_entry()
  nilfs2: convert checkpoint file to be folio-based

 fs/nilfs2/alloc.c    | 148 +++++++++--------
 fs/nilfs2/alloc.h    |   4 +-
 fs/nilfs2/cpfile.c   | 383 +++++++++++++++++++++++--------------------
 fs/nilfs2/dat.c      |  98 +++++------
 fs/nilfs2/dir.c      |   2 +-
 fs/nilfs2/ifile.c    |  10 +-
 fs/nilfs2/ifile.h    |   4 +-
 fs/nilfs2/inode.c    |  35 +---
 fs/nilfs2/mdt.c      |  40 +++--
 fs/nilfs2/page.c     |   4 +-
 fs/nilfs2/page.h     |   4 +-
 fs/nilfs2/recovery.c |  17 +-
 fs/nilfs2/segbuf.c   |  17 +-
 fs/nilfs2/sufile.c   | 160 +++++++++---------
 14 files changed, 485 insertions(+), 441 deletions(-)