On Mon, Jun 12, 2023 at 11:02 PM Matthew Wilcox (Oracle)
wrote:
> This kind of started off as a gfs2 patch series, then became entwined
> with buffer heads once I realised that gfs2 was the only remaining
> caller of __block_write_full_page(). For those not in the gfs2 world,
> the big point of this series is that block_write_full_page() should now
> handle large folios correctly.
This is great, thank you. For the gfs2 bits:
Reviewed-by: Andreas Gruenbacher
> Andrew, if you want, I'll drop it into the pagecache tree, or you
> can just take it.
>
> v3:
> - Fix a patch title
> - Fix some checks against i_size to be >= instead of >
> - Call folio_mark_dirty() instead of folio_set_dirty()
>
> Matthew Wilcox (Oracle) (14):
> gfs2: Use a folio inside gfs2_jdata_writepage()
> gfs2: Pass a folio to __gfs2_jdata_write_folio()
> gfs2: Convert gfs2_write_jdata_page() to gfs2_write_jdata_folio()
> buffer: Convert __block_write_full_page() to
> __block_write_full_folio()
> gfs2: Support ludicrously large folios in gfs2_trans_add_databufs()
> buffer: Make block_write_full_page() handle large folios correctly
> buffer: Convert block_page_mkwrite() to use a folio
> buffer: Convert __block_commit_write() to take a folio
> buffer: Convert page_zero_new_buffers() to folio_zero_new_buffers()
> buffer: Convert grow_dev_page() to use a folio
> buffer: Convert init_page_buffers() to folio_init_buffers()
> buffer: Convert link_dev_buffers to take a folio
> buffer: Use a folio in __find_get_block_slow()
> buffer: Convert block_truncate_page() to use a folio
>
> fs/buffer.c | 257 ++--
> fs/ext4/inode.c | 4 +-
> fs/gfs2/aops.c | 69 +-
> fs/gfs2/aops.h | 2 +-
> fs/ntfs/aops.c | 2 +-
> fs/reiserfs/inode.c | 9 +-
> include/linux/buffer_head.h | 4 +-
> 7 files changed, 172 insertions(+), 175 deletions(-)
>
> --
> 2.39.2
>