mbox series

[f2fs-dev,000/153] f2fs folio conversions for 6.16

Message ID 20250331201256.1057782-1-willy@infradead.org (mailing list archive)
Headers show
Series f2fs folio conversions for 6.16 | expand

Message

Matthew Wilcox (Oracle) March 31, 2025, 8:10 p.m. UTC
Sorry for the length of this series.  Each patch in this series builds,
but obviously I haven't done any testing.  It should be easy to bisect
to any mistakes I've made.  This conversion isn't complete; I estimate
another 100 or so patches will be needed.

Matthew Wilcox (Oracle) (153):
  f2fs: Use a folio in f2fs_compress_free_page()
  f2fs: Use a folio in f2fs_write_raw_pages()
  f2fs: Introduce fio_inode()
  f2fs: Use F2FS_P_SB() in f2fs_is_compressed_page()
  f2fs: Use bio_for_each_folio_all() in __has_merged_page()
  f2fs: Use a folio in add_ipu_page()
  f2fs: Remove access to page->mapping in f2fs_is_cp_guaranteed()
  f2fs: Use a folio in move_data_block()
  f2fs: Use a folio in f2fs_quota_read()
  f2fs: Add f2fs_grab_meta_folio()
  f2fs: Use a folio in commit_checkpoint()
  f2fs: Convert __f2fs_write_meta_page() to __f2fs_write_meta_folio()
  f2fs: Use f2fs_folio_wait_writeback()
  f2fs: Pass a folio to f2fs_submit_merged_ipu_write()
  f2fs: Convert __get_meta_page() to __get_meta_folio()
  f2fs: Convert f2fs_get_tmp_page() to f2fs_get_tmp_folio()
  f2fs: Pass a folio to next_blkaddr_of_node()
  f2fs: Use a folio in f2fs_ra_meta_pages()
  f2fs: Use a folio in f2fs_ra_meta_pages_cond()
  f2fs: Use a folio in write_orphan_inodes()
  f2fs: Use a folio in get_next_nat_page()
  f2fs: Convert get_next_sit_page() to get_next_sit_folio()
  f2fs: Use a folio in f2fs_update_meta_page()
  f2fs: Use a folio in write_current_sum_page()
  f2fs: Use a folio in write_compacted_summaries()
  f2fs: Remove f2fs_grab_meta_page()
  f2fs: Add f2fs_get_meta_folio()
  f2fs: Use a folio in build_sit_entries()
  f2fs: Use a folio in f2fs_recover_orphan_inodes()
  f2fs: Use a folio in validate_checkpoint()
  f2fs: Use a folio in f2fs_get_valid_checkpoint()
  f2fs: Use a folio in f2fs_get_node_info()
  f2fs: Use a folio in __get_nat_bitmaps()
  f2fs: Use a folio in read_compacted_summaries()
  f2fs: Use a folio in read_normal_summaries()
  f2fs: Remove f2fs_get_meta_page()
  f2fs: Convert f2fs_get_meta_page_retry() to
    f2fs_get_meta_folio_retry()
  f2fs: Pass an address to scan_nat_page()
  f2fs: Add f2fs_get_sum_folio()
  f2fs: Use folios in do_garbage_collect()
  f2fs: Use a folio in check_index_in_prev_nodes()
  f2fs: Use a folio in change_curseg()
  f2fs: Remove f2fs_get_sum_page()
  f2fs: Use a folio in find_in_level()
  f2fs: Use a folio in f2fs_delete_entry()
  f2fs: Use a folio in f2fs_readdir()
  f2fs: Remove f2fs_find_data_page()
  f2fs: Use a folio in f2fs_get_new_data_page()
  f2fs: Use a folio in f2fs_migrate_blocks()
  f2fs: Add f2fs_get_new_data_folio()
  highmem: Add memcpy_folio()
  f2fs: Use a folio in __clone_blkaddrs()
  f2fs: Use a folio in f2fs_defragment_range()
  f2fs: Remove f2fs_get_lock_data_page()
  f2fs: Use a folio in fill_zero()
  f2fs: Use a folio in f2fs_add_regular_entry()
  f2fs: Use a folio in make_empty_dir()
  f2fs: Remove f2fs_get_new_data_page()
  f2fs: Use a folio in f2fs_xattr_fiemap()
  f2fs: Use a folio in ra_data_block()
  f2fs: Use a folio in move_data_block()
  f2fs: Use a folio in f2fs_convert_inline_inode()
  f2fs: Use a folio in f2fs_move_inline_dirents()
  f2fs: Add f2fs_new_node_folio()
  f2fs: Use a folio in f2fs_ra_node_page()
  f2fs: Convert read_node_page() to read_node_folio()
  f2fs: Pass a folio to f2fs_inode_chksum_verify()
  f2fs: Use a folio in f2fs_recover_inode_page()
  f2fs: Remove f2fs_grab_cache_page()
  f2fs: Add f2fs_get_xnode_folio()
  f2fs: Use a folio in write_all_xattrs()
  f2fs: Use a folio in f2fs_recover_xattr_data()
  f2fs: Add f2fs_get_node_folio()
  f2fs: Use folios in f2fs_get_dnode_of_data()
  f2fs: Use a folio in truncate_node()
  f2fs: Use a folio in truncate_nodes()
  f2fs: Use folios in truncate_partial_nodes()
  f2fs: Pass a folio to f2fs_ra_node_pages()
  f2fs: Use a folio in gc_node_segment()
  f2fs: Convert f2fs_move_node_page() to f2fs_move_node_folio()
  f2fs: Convert __write_node_page() to __write_node_folio()
  f2fs: Use a folio in is_alive()
  f2fs: Use a folio in check_index_in_prev_nodes()
  f2fs: Remove f2fs_get_node_page()
  f2fs: Use a folio in prepare_write_begin
  f2fs: Use a folio in __find_data_block()
  f2fs: Use a folio in f2fs_init_inode_metadata()
  f2fs: Pass a folio to make_empty_dir()
  f2fs: Use a folio in f2fs_try_convert_inline_dir()
  f2fs: Use a folio in f2fs_add_inline_entry()
  f2fs: Pass a folio to f2fs_move_inline_dirents()
  f2fs: Pass a folio to f2fs_move_rehashed_dirents()
  f2fs: Use a folio in f2fs_do_truncate_blocks()
  f2fs: Use a folio in f2fs_truncate_xattr_node()
  f2fs: Pass folios to set_new_dnode()
  f2fs: Convert f2fs_convert_inline_page() to
    f2fs_convert_inline_folio()
  f2fs: Use a folio in read_xattr_block()
  f2fs: Remove f2fs_get_xnode_page()
  f2fs: Use a folio in f2fs_write_inline_data()
  f2fs: Use a folio in f2fs_read_inline_data()
  f2fs: Use a folio in f2fs_recover_inline_data()
  f2fs: Use a folio in f2fs_find_in_inline_dir()
  f2fs: Use a folio in f2fs_empty_inline_dir()
  f2fs: Use a folio in f2fs_read_inline_dir()
  f2fs: Use a folio in f2fs_inline_data_fiemap()
  f2fs: Use a folio in f2fs_update_inode_page()
  f2fs: Use a folio in do_read_inode()
  f2fs: Pass folios to f2fs_init_acl()
  f2fs: Pass a folio to f2fs_setxattr()
  f2fs: Pass a folio to __f2fs_setxattr()
  f2fs: Pass a folio to write_all_xattrs()
  f2fs: Use a folio in read_inline_xattr()
  f2fs: Use a folio in f2fs_recover_inline_xattr()
  f2fs: Remove f2fs_get_inode_page()
  f2fs: Pass a folio to f2fs_getxattr()
  f2fs: Pass a folio to read_inline_xattr()
  f2fs: Pass a folio to do_recover_data()
  f2fs: Pass a folio to f2fs_recover_inline_xattr()
  f2fs: Pass a folio to inline_xattr_addr()
  f2fs: Pass a folio to init_dent_inode()
  f2fs: Pass a folio to f2fs_make_empty_inline_dir()
  f2fs: Pass a folio to f2fs_has_enough_room()
  f2fs: Convert dnode_of_data->inode_page to inode_folio
  f2fs: Pass a folio to f2fs_do_read_inline_data()
  f2fs: Pass a folio to f2fs_truncate_inline_inode()
  f2fs: Pass a folio to __f2fs_find_entry()
  f2fs: Pass a folio to f2fs_find_entry()
  f2fs: Pass a folio to f2fs_parent_dir()
  f2fs: Pass a folio to f2fs_delete_entry()
  f2fs: Pass a folio to f2fs_delete_inline_entry()
  f2fs: Pass a folio to f2fs_recover_inline_data()
  f2fs: Pass a folio to __recover_inline_status()
  f2fs: Pass a folio to inline_data_addr()
  f2fs: Convert f2fs_put_page_dic() to f2fs_put_folio_dic()
  f2fs: Pass a folio to f2fs_set_link()
  f2fs: Use a folio in need_inode_page_update()
  f2fs: Use a folio in f2fs_truncate_meta_inode_pages()
  f2fs: Use a folio in f2fs_cache_compressed_page()
  f2fs: Use a folio in prepare_compress_overwrite()
  f2fs: Convert f2fs_load_compressed_page() to
    f2fs_load_compressed_folio()
  f2fs: Use a folio in f2fs_encrypt_one_page()
  f2fs: Use a folio in redirty_blocks()
  f2fs: Use a folio in f2fs_wait_on_block_writeback()
  f2fs: Pass a folio to f2fs_init_read_extent_tree()
  f2fs: Return a folio from f2fs_init_inode_metadata()
  f2fs: Pass a folio to f2fs_update_inode()
  f2fs: Pass a folio to set_nid()
  f2fs: Convert dnode_of_data->node_page to node_folio
  f2fs: Pass a folio to get_dnode_addr()
  f2fs: Convert fsync_node_entry->page to folio
  f2fs: Remove f2fs_new_node_page()
  f2fs: Use a folio in flush_inline_data()
  f2fs: Convert clear_node_page_dirty() to clear_node_folio_dirty()

 fs/f2fs/acl.c           |  33 ++-
 fs/f2fs/acl.h           |  10 +-
 fs/f2fs/checkpoint.c    | 193 +++++++--------
 fs/f2fs/compress.c      | 134 +++++-----
 fs/f2fs/data.c          | 208 ++++++++--------
 fs/f2fs/dir.c           | 240 +++++++++---------
 fs/f2fs/extent_cache.c  |  10 +-
 fs/f2fs/f2fs.h          | 184 +++++++-------
 fs/f2fs/file.c          | 155 ++++++------
 fs/f2fs/gc.c            | 140 ++++++-----
 fs/f2fs/inline.c        | 306 +++++++++++------------
 fs/f2fs/inode.c         |  94 +++----
 fs/f2fs/namei.c         | 112 ++++-----
 fs/f2fs/node.c          | 526 ++++++++++++++++++++--------------------
 fs/f2fs/node.h          |  12 +-
 fs/f2fs/recovery.c      | 178 +++++++-------
 fs/f2fs/segment.c       | 147 ++++++-----
 fs/f2fs/segment.h       |   6 +-
 fs/f2fs/super.c         |  36 ++-
 fs/f2fs/xattr.c         | 116 ++++-----
 fs/f2fs/xattr.h         |  24 +-
 include/linux/highmem.h |  27 +++
 22 files changed, 1444 insertions(+), 1447 deletions(-)