mbox series

[v3,00/14] gfs2/buffer folio changes for 6.5

Message ID 20230612210141.730128-1-willy@infradead.org (mailing list archive)
Headers show
Series gfs2/buffer folio changes for 6.5 | expand

Message

Matthew Wilcox June 12, 2023, 9:01 p.m. UTC
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.

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

Comments

Andreas Gruenbacher June 12, 2023, 9:28 p.m. UTC | #1
On Mon, Jun 12, 2023 at 11:02 PM Matthew Wilcox (Oracle)
<willy@infradead.org> 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 <agruenba@redhat.com>

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